Criação de testes unitários e de integração #28
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resumo
Os arquivos no diretório
__mocks__fornecem mocks para dependências dos testes, enquanto os arquivos no diretório__tests__contêm testes unitários e de integração para validar o comportamento do código. As configurações no package.json garantem que o Jest funcione corretamente com esses mocks e arquivos de teste.TimeController.jsTimeController. Simula o comportamento do controlador de tempo para isolar dependências nos testes.TimeUtils.jsTimeUtils. Simula funções utilitárias relacionadas ao tempo, como conversões e formatações.audioMock.jsAudio). Substitui o comportamento de áudio no ambiente de testes para evitar erros relacionados a arquivos de som.browserApiMocks.jswindow,document, ou outras APIs específicas usadas no código.domMocks.jsquerySelector,addEventListener, e propriedades comoclassList, permitindo testar interações com o DOM.fileMock.js.wave.mp3. Substitui esses arquivos durante os testes para evitar dependências externas.TimeController.test.jsTimeController. Verifica o comportamento das funções e métodos do controlador de tempo.TimeStatus.test.jsTimeStatus. Verifica o comportamento de estados relacionados ao timer.TimeUtils.test.jsTimeUtils. Valida funções utilitárias, como conversões de tempo e formatações.TimerIntegration.test.jsTimerController. Verifica a interação entre diferentes partes do sistema, como eventos DOM e mudanças de estado.Configurações no package.json
jesttestEnvironment: "jsdom"Define o ambiente de teste como
jsdom, simulando um navegador.moduleNameMapperMapeia arquivos
.wave.mp3para o mockfileMock.js.setupFilesCarrega o mock
audioMock.jsantes de executar os testes.Dependências relacionadas a testes
jest: Framework de testes.jest-environment-jsdom: Ambiente de teste que simula o DOM.babel-jest: Integração do Babel com o Jest para transpilar código moderno.