Trata-se de um microserviço para expor APIs de CRUD de livros
- NodeJS
- Typescript
- Express
- Banco de dados (MongoDB, Mysql)
- Jest (Testes)
- TypeORM (ORM)
- Docker (branch: docker)
- Deve ser possível cadastrar um novo Livro no estoque.
Regras de Negócio
- Não deve ser possível cadastrar um livro com um ISBN já existente.
- Não deve ser possível cadastrar um livro com estoque negativo.
- Deve ser possível listar todos os livros do estoque - divididos por páginas (informadas ou não na URL).
- Deve ser possível listar todos os livros do estoque - visualizando os nomes.
- Deve ser possível listar todas as informações do livro - passando o ISBN como parâmetro.
- Deve ser possível atualizar um livro do estoque - informando o ISBN do livro a ser atualizado.
- Deve ser possível atualizar nome, autor, descição e estoque do livro.
- Deve retornar os dados que foram atualizados de acordo com o respectivo ISBN.
Regras de Negócio
- Não deve ser possível atualizar dados de um livro que não está no estoque (ISBN cadastrado no banco).
- Não deve ser possível atualizar o ISBN de um livro.
- Não deve ser possível atualizar o estoque de um livro para valores negativos.
- Deve ser possível deletar um livro do estoque - informando o ISBN do livro a ser deletado.
- Deve retornar uma mensagem informando que o livro foi deletado com sucesso.
Regras de Negócio
- Não deve ser possível deletar um livro que não está no estoque (ISBN cadastrado no banco).