Leonardo b331d68572 Test: classifySendError cobre 22 casos de erro de envio WhatsApp
Exporta classifySendError (era privada do store) pra poder testar
isolada. A funcao e' deterministica e pura, entao spec direto vale
mais que stub do supabase.functions.invoke.

Cobertura:
- 5xx downstream (502/503/504) -> banner "fora do ar" com 2 CTAs
  (Configurar + Comprar creditos), incluindo o case sem code
- http_500 explicitamente NAO cai no ramo 5xx (e' catch geral, nao
  "downstream fora") — checagem de regressao
- insufficient_credits, canal nao configurado/inativo (3 variacoes
  de string), credenciais evolution/twilio incompletas
- evolution retornou X (com e sem status 5xx — confirma precedencia
  dos ramos), twilio_send_failed_<code>
- auth (sessao expirou), forbidden (sem permissao) — ambos sem CTA
- "Edge Function returned a non-2xx" wrapper do supabase-js
- Fallback generico: code desconhecido com message custom; code+message
  vazios -> mensagem padrao
- Robustez: case-insensitive (INSUFFICIENT_CREDITS -> reconhece),
  status nao-numerico -> null em vez de NaN, codes nao-string
  (undefined/number/object) nao quebram

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 21:28:47 -03:00
2024-07-29 10:14:47 +03:00
2024-07-25 16:41:34 +03:00
2026-02-18 22:36:45 -03:00
2026-03-06 06:37:13 -03:00
2024-07-29 10:14:47 +03:00
2024-07-25 16:41:34 +03:00
2026-02-18 22:36:45 -03:00
2026-03-06 06:37:13 -03:00
2024-07-25 16:41:34 +03:00
2022-12-28 14:04:39 +03:00
2024-08-03 11:36:25 +03:00
2026-03-12 08:58:36 -03:00
2024-03-18 10:33:41 +03:00

Sakai is an application template for Vue based on the create-vue, the recommended way to start a Vite-powered Vue projects.

Visit the documentation to get started.

S
Description
No description provided
Readme 56 MiB
Languages
Vue 61.3%
PLpgSQL 17.4%
JavaScript 16%
HTML 2.7%
TypeScript 2.3%
Other 0.3%