Este projeto consiste em um app back-end de Códigos de Endereçamento Postal (CEPs) que permite seu cadastro e consulta.
Existem três endpoints disponíveis na API:
- POST
/ceps: recebe um payload em formato JSON contendo o número do CEP e seu logradouro e salva essas informações no banco de dados; - GET
/ceps/busca/cep/:cep: recebe o número do CEP via path param e retorna o logradouro referente ao CEP consultado; - GET
/ceps/busca/logradouro/:logradouro: recebe o logradouro via path param e retorna o número do CEP referente.
Para cada endpoint foi implementado um conjunto de testes que verifica se as respostas estão de acordo com as especificações. Um detalhe importante é que todas as requisições que envolvem CEPs utilizam a máscara #####-### para garantir que o formato de oito dígitos seja seguido.
Este foi o quarto repositório de código apresentado no Curso Superior de TSI do IFMS como requisito para obtenção da nota parcial das atividades da unidade curricular Linguagem de Programação III.
| ← Repositório anterior | Próximo repositório → |
|---|
As seguintes tecnologias foram utilizadas para desenvolver este app:
| Papel | Tecnologia |
|---|---|
| Ambiente de execução | Node |
| Linguagem de programação | TypeScript |
| Back-end | Express.js |
| Framework de teste | Cypress |
| Virtualização de banco de dados | Docker |
| Banco de dados | MongoDB |
-
Clone o repositório de código em sua máquina;
-
Abra um shell de comando de sua preferência (prompt de comando, PowerShell, terminal etc.);
-
Instale as dependências do projeto através do seguinte comando:
$ npm installCaso esteja utilizando o gerenciador de pacotes Yarn, execute o seguinte comando como alternativa:
$ yarn- Com o Docker instalado, execute o comando abaixo para levantar o container Docker com o respectivo banco de dados virtualizado. Certifique-se de estar no diretório do arquivo
docker-compose.yml;
$ docker-compose up -dO parâmetro -d serve para desocupar o shell de comando logo após a execução do comando. É uma boa convenção, ao encerrar a execução do app, derrubar o container levantado através do comando:
$ docker-compose downMas, não se preocupe. As tuplas inseridas no banco de dados não serão deletadas com a derrubada do container.
- Execute o seguinte comando para iniciar a API:
Para npm:
$ npm run devPara Yarn:
$ yarn dev- Por fim, execute o seguinte comando para testar a API iniciada:
Para npm:
$ npm run cy:runPara Yarn:
$ yarn cy:run