Skip to content

Conversation

@andrekutianski
Copy link
Member

Esta solicitação de pull request visa aprimorar a confiabilidade dos testes de integração, o tratamento de erros e a configuração do ambiente de teste para o SDK Node.js da NFE.io. As alterações garantem que os testes de integração sejam executados apenas com chaves de API válidas, simplificam a lógica de omissão de testes e tornam o tratamento de erros nos testes mais robusto. Também foram feitas pequenas melhorias nos metadados do SDK e nas funções utilitárias de teste.

Melhorias na confiabilidade e no ambiente de teste:

  • Refatoramos a lógica de omissão de testes de integração para usar a função utilitária skipIfNoApiKey(), garantindo que os testes sejam executados apenas quando uma chave de API real estiver presente e não para chaves de teste/placeholder. Isso afeta tanto os testes de integração da empresa quanto os de tratamento de erros, tornando-os mais robustos e menos propensos a serem executados involuntariamente em CI ou com credenciais inválidas. [1] [2] [3] [4]

  • Adicionado um manipulador global em tests/setup.ts para suprimir avisos de rejeição de promessas não tratadas para erros esperados de polling e timeout durante os testes, melhorando a clareza da saída dos testes.

  • Introduzida uma função auxiliar hasRealApiKey para distinguir entre chaves de API reais e de teste para o controle de testes de integração.

Aprimoramentos nos testes de integração e unitários:

  • Todos os testes de integração foram atualizados para usar a nova lógica de omissão e chamadas redundantes de .skipIf() foram removidas de casos de teste individuais, simplificando a manutenção dos testes. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]

  • Melhorias no tratamento e limpeza de temporizadores nos testes unitários do utilitário de polling para evitar instabilidade nos testes e garantir a limpeza adequada de recursos.

  • Ignorou-se um teste de integração de polling que requer implementação adicional para lógica de repetição, com uma nota TODO para trabalho futuro.

  • Atualizou-se o teste de polling para usar os nomes corretos dos parâmetros de tempo limite e melhorou-se a correspondência das mensagens de erro para tempos limite.

Metadados e empacotamento do SDK:

  • Pequenas melhorias no package.json, incluindo a formatação do array keywords, a correção do formato da URL do repositório e a atualização do campo exports para melhor suporte ao TypeScript. [1] [2]
  • Dividiu o script prepublishOnly em prepublishOnly e prepublish:test para etapas de pré-publicação mais claras.

Tratamento de erros:

  • Adicionou um getter de alias statusCode à classe NfeError para melhorar a compatibilidade com testes e a inspeção de erros.

@andrekutianski andrekutianski self-assigned this Jan 20, 2026
@andrekutianski andrekutianski changed the title V3 V3- Aprimoramento Testes Integracao Jan 20, 2026
@andrekutianski andrekutianski merged commit f61e0c9 into master Jan 20, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants