O objetivo é mostrar uma API utilizando TDD como metodologia de trabalho sempre seguindo os princípios do SOLID.
- POST para a rota do SSO para gerar um novo token
- POST para a rota SSO Instrospect para conferir se o status do token é ativo e dar permissão para as demais rotas da aplicacão
OBS: para a validacao do token foi utilizada a seguinte documentacao sobre Instrospect no Keycloak Instrospect DOC
- Por motivos de facilitar os testes na API deixei o .env no github, assim é só baixar o projeto e testar, ja que o token ser gerado com emails diferentes não tem nenhum impacto.
- OBS: Para todas as rotas abaixo é necessário passar um Bearer token valido gerado com o SSO
- [Listar um cliente - GET]
/customers/:id
- [Atualizar um cliente - PUT]
/customers/:id
- [Criar um cliente - POST]
/customers/
- Testes Unitários
- Testes de Integração (API Rest)
- Cobertura de Testes
- Mocks
- Stubs
- Documentação de API com Swagger
- API Rest com Express
- Segurança (Hashing, Encryption e Encoding)
- CORS
- Middlewares
- POO Avançado
- Interface
- TypeAlias
- Namespace
- Utility Types
- Configurações
- Build
- Persistir dados com
set
- Atualizar dados com
set
eget
- Listar dados com
get
git clone https://github.com/GustavoNoronha0/customer.git
cd customer
docker compose up
A API sera executada em http://localhost:3000
docker-compose run customer-api npm run test
docker-compose run customer-api npm run test:cov
git clone https://github.com/GustavoNoronha0/customer.git
cd customer
npm install
npm start run:dev
A API sera executada em http://localhost:3000
npm run test
npm run test:cov