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
getModulePhases
com 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
getModulePhases
para 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
-
ModuleControllerTest
para testar o endpoint -
ModuleServiceTest
para 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