https://github.com/gropp/dio-tests
exemplos de testes em JS
https://github.com/gropp/dio-tests
javascript typescript
Last synced: about 2 months ago
JSON representation
exemplos de testes em JS
- Host: GitHub
- URL: https://github.com/gropp/dio-tests
- Owner: Gropp
- Created: 2022-08-18T18:51:45.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-08-18T21:46:29.000Z (almost 4 years ago)
- Last Synced: 2025-01-15T07:56:50.877Z (over 1 year ago)
- Topics: javascript, typescript
- Language: TypeScript
- Homepage:
- Size: 278 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# TwiDIO API
# por Nathally Souza - https://github.com/nathyts
#### API desenvolvida para o projeto TwiDIO
### Arquitetura
#### 📂Controllers
> Aplica validações necessárias na requisição.
#### 📂Services
> Aplica regras de negócios antes de enviar ao repositório.
#### 📂Repositories
> Salva os dados no banco de dados.
#### 📂Entities
> Gerencia a estrutura das entidades da aplicação.
#### 📂Database
> Cria as conexões necessárias com o banco de dados.
#### 📂__mocks __
> Armazena os dados e mocks utilizados nos testes unitários.
#### 📂tests
> Armazena as switch de testes de integração.
```
📁 TwiDIO
|
|- 📁 src
| |
| |- 📁 __mocks_
| |- 📄 getEntityManagerMock.ts
| |- 📄 mockContentList.ts
| |- 📄 mockRequest.ts
| |- 📄 mockResponse.ts
|
| |- 📁 database
| |- 📁 migrations
| |- 📄 index.ts
| |- 📄 database.sqlite
| |- 📄 database.test.sqlite
|
| |- 📁 controllers
| |- 📄 UserController.ts
| |- 📄 MessageController.ts
|
| |- 📁 entities
| |- 📄 User.ts
|
| |- 📁 repositories
| |- 📄 UserRepository.ts
|
| |- 📁 services
| |- 📄 UserService.ts
|
| |- 📁 tests
| |- 📄 message.test.ts
| |- 📄 user.test.ts
|
|
|- 📄 .gitignore
|- 📄 package.json
|- 📄 app.ts
|- 📄 index.ts
|- 📄 router.ts
```
### Este projeto usa
- Node
- Typescript
- Jest
- SQLite
- TypeORM
### Como rodar o projeto
1 - Clone o repositório
2 - Instale todas as dependências
---
yarn install
---
4 - Acesse a rota principal
### Testando o projeto
#### Testes unitários
---
yarn test:unit
---
#### Testes de integração
1 - Rode a aplicação em modo de desenvolvimento
---
yarn run dev
---
1 - Rode os testes de integração no repositório /tests
---
yarn test:integration
---
### endpoints
**_GET_** /
Retorna uma mensagem de boas vindas
##### Exemplo
---
http://localhost:5000/
---
**_POST_** /user
Cria um novo usuário no banco de dados. Todos os campos são obrigatórios
##### Exemplo
---
body {
email: 'author@email.com',
name: 'Nome do usuário'
}
---
**Desafios sugeridos**
- Usando os conceitos de TDD
[ ] Implementar uma rota que retorne todos os usuários cadastrados
[ ] Implementar uma mensagem de erro quando tentar cadastrar um usuário com os campos em branco
### Happy hacking!