feat: initial commit - Carinha Control Panel v1.0 com UI glassmorphism, watch-bar, emojis, braco robotico e conversa IA

This commit is contained in:
julio
2026-10-05 16:21:57 -03:00
commit 8217292893
114 changed files with 13145 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
import unittest,tempfile,os,json
from pathlib import Path
from unittest.mock import patch
import gemini
from api_config import ConfigAPI
class APIConfigTest(unittest.TestCase):
def test_persistencia_e_sem_chave_na_resposta(self):
with tempfile.TemporaryDirectory() as d,patch.dict(os.environ,{'GEMINI_API_KEY':'teste-chave-original-123456'}),patch.object(gemini,'MODELO','modelo-original'):
p=Path(d)/'api.json';c=ConfigAPI(p);secret='nova-chave-de-teste-123456'
status=c.salvar(dict(modelo='gemini-flash-lite-latest',chave=secret))
self.assertNotIn(secret,json.dumps(status));self.assertTrue(status['configurada'])
c.salvar(dict(modelo='gemini-flash-latest'));self.assertEqual(json.loads(p.read_text())['chave'],secret)
loaded=ConfigAPI(p);self.assertEqual(loaded.status()['modelo'],'gemini-flash-latest')
def test_teste_de_conexao_e_validacao(self):
with tempfile.TemporaryDirectory() as d:
c=ConfigAPI(Path(d)/'api.json')
with self.assertRaises(ValueError):c.salvar(dict(modelo='../invalido',chave='abc'))
with patch('gemini.gerar_json',return_value={'ok':True}):self.assertTrue(c.testar()['ok'])
with patch('gemini.gerar_json',side_effect=RuntimeError('segredo')):
result=c.testar();self.assertFalse(result['ok']);self.assertNotIn('segredo',json.dumps(result))