🚀 Auto-deploy: BotVPS atualizado em 29/03/2026 18:02:27

This commit is contained in:
2026-03-29 18:02:27 +00:00
parent 08456862ec
commit 7a3790344e
2 changed files with 117 additions and 52 deletions

54
validate_tools.py Normal file
View File

@@ -0,0 +1,54 @@
import os
import sys
import json
from tools import gmail_manage_label, gmail_manage_filter, list_gmail_emails, run_bash_command, resolve_account
def test_account(account_alias: str):
print(f"\n--- INICIANDO TESTES PARA CONTA: {account_alias} ---")
# 1. Teste de Listagem de E-mails
print(f"[TEST] Listando e-mails...")
emails = list_gmail_emails(account_alias)
if "Sucesso" in emails or "📧" in emails:
print(f"✅ SUCESSO na listagem (Amostra): {emails[:50]}...")
else:
print(f"❌ FALHA na listagem: {emails}")
# 2. Teste de Criação de Marcador (Label)
test_label = "ANTIGRAVITY_PROACTIVE_TEST"
print(f"[TEST] Criando marcador '{test_label}'...")
res_label = gmail_manage_label(f"{account_alias} {test_label}")
if "Sucesso" in res_label or "já existe" in res_label or "Criação" in res_label:
print(f"✅ SUCESSO no marcador: {res_label}")
else:
print(f"❌ FALHA no marcador: {res_label}")
# 3. Teste de Criação de Filtro
print(f"[TEST] Criando filtro de teste...")
res_filter = gmail_manage_filter(f"{account_alias} test@example.com {test_label}")
if "Sucesso" in res_filter or "Sucesso" in str(res_filter) or "{" in str(res_filter):
print(f"✅ SUCESSO no filtro: {res_filter}")
else:
print(f"❌ FALHA no filtro: {res_filter}")
# 4. Limpeza
print(f"[TEST] Limpando...")
account = resolve_account(account_alias)
# Busca ID para deletar
list_res = run_bash_command(f"{account} gmail users labels list")
try:
data = json.loads(list_res)
for l in data.get("labels", []):
if l["name"] == test_label:
run_bash_command(f"{account} gmail users labels delete --params '{{\"userId\": \"me\", \"id\": \"{l['id']}\"}}'")
print(f"✅ Limpeza concluída.")
break
except: pass
if __name__ == "__main__":
accounts = ["adm", "mr", "4r"]
for acc in accounts:
try:
test_account(acc)
except Exception as e:
print(f"❌ Erro crítico ao testar {acc}: {e}")