gostack-fundamentos-node

Desafio utilizando Node.js e TypeScript incluindo ferramentas como ts-node-dev, ESLint, Prettier, EditorConfig

Stars
0

Indice


🚀 Sobre o Desafio

O projeto Fundamentos Node.JS é o primeiro desafio do curso Bootcamp GoStack da Rocketseat, utilizando a técnica e tendência de TDD (Test Driven Development).

Nesse desafio, foi criado uma aplicação para continuar treinando do que foi aprendido até o momento no Node.js junto ao TypeScript, utilizando o conceito de models, repositories e services!

Essa aplicação deve armazenar transações financeiras de entrada e saída, que deve permitir o cadastro e a listagem dessas transações.

Foi utilizado o template que está disponível nessa url onde haviam 3 (três) testes que deveriam ter sido resolvidos para ganhar a nota total do desafio.


📝 Específicação dos testes

Em cada teste, tem uma breve descrição no que a aplicação deve cumprir para que o teste passe.

Para esse desafio, foi proposto os seguintes testes:

  • should be able to create a new transaction: Para que esse teste passe, a aplicação deve permitir que uma transação seja criada, e retorne um json com a transação criada.

  • should be able to list the transactions: Para que esse teste passe, a aplicação deve permitir que seja retornado um objeto contendo todas as transações junto ao balanço de income, outcome e total das transações que foram criadas até o momento.

  • should not be able to create outcome transaction without a valid balance: Para que esse teste passe, a aplicação não deve permitir que uma transação do tipo outcome extrapole o valor total que o usuário tem em caixa, retornando uma resposta com código HTTP 400 e uma mensagem de erro no seguinte formato: { error: string }


👨‍💻️ Tecnogias utilizadas

O projeto foi desenvolvido utilizando as seguintes tecnologias:


📦️ Como baixar o projeto

  # Clonar o repositório
   git clone https://github.com/jerp86/gostack-fundamentos-node.git

  # Entrar no diretório
   cd gostack-fundamentos-node

  # Instalar as dependências
   yarn
  # ou pode utilizar npm
   npm install

  # Iniciar o projeto
   yarn dev:server
  # ou pode utilizar npm
   npm dev:server

  # Iniciar os testes
   yarn test
  # ou pode utilizar npm
   npm test