Nesse desafio, você deverá criar testes unitários para uma aplicação já pronta usando tudo que aprendeu até agora sobre testes.
Para que você possa focar somente na parte de testes unitários sem precisar estudar muito a aplicação do zero, o template foi desenvolvido com base em uma aplicação já conhecida: FinAPI. A API construída no primeiro módulo da trilha.
Para realizar esse desafio, criamos para você esse modelo que você deve utilizar como um template do GitHub.
O template está disponível na seguinte URL:
rocketseat-education/ignite-template-tests-challenge
Dica: Caso não saiba utilizar repositórios do GitHub como template, temos um guia em **nosso FAQ.**
Se você quiser testar a aplicação usando o Insomnia para ver o funcionamento até mesmo como auxílio para criar os testes unitários, é importante que você confira os dados de autenticação do banco no arquivo ormconfig.json
e, se necessário, altere.
Além disso você precisa criar uma database com o nome fin_api
de acordo com o que está no arquivo de configurações do TypeORM.
Para te ajudar a entender melhor o funcionamento da aplicação como um todo, abaixo você verá uma descrição de cada rota e quais parâmetros recebe.
/api/v1/users
A rota recebe name
, email
e password
dentro do corpo da requisição, salva o usuário criado no banco e retorna uma resposta vazia com status 201
.
/api/v1/sessions
A rota recebe email
e password
no corpo da requisição e retorna os dados do usuário autenticado junto à um token JWT.
<aside> 💡 Essa aplicação não possui refresh token, ou seja, o token criado dura apenas 1 dia e deve ser recriado após o período mencionado.
</aside>
/api/v1/profile