Ag 36
Issue number:
#AG-36
Descrição:
1 - Criação da classe de resposta ModulePhaseData
- Representa uma fase individual de um módulo
- Contém o número da fase (
phase) e o nome da fase (name)
2 - Criação da classe de resposta ModulePhaseResponse
- Contém o progresso do usuário (fixado como "0%")
- Armazena o nome do módulo
- Inclui uma lista de fases (
ModulePhaseData)
3 - Adição do endpoint no ModuleController
- Implementação do método
getModulePhasescom o caminho/modules/{moduleId}/phase - Adição do content para a resposta 200 no Swagger
4 - Implementação da lógica no ModuleService
- Método
getModulePhasespara buscar as fases de um módulo específico - Verificação se o módulo existe
- Agrupamento dos itens por fase
- Identificação do título de cada fase (primeiro item do tipo
TITLE) - Resposta com progresso "0%"
5 - Criação de testes unitários
-
ModuleControllerTestpara testar o endpoint -
ModuleServiceTestpara testar a lógica de negócio - Cobertura de casos: módulo existente, módulo não encontrado e módulo sem itens.
Checklist:
- Respeitou a arquitetura planejada
- Não deixou imports que não foram utilizados
- Não deixou nenhum código comentado