Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/carloshenriquefs/validation-and-security
:white_check_mark: - Desafio Validação e Segurança
https://github.com/carloshenriquefs/validation-and-security
challenge java tdd testes-integracao
Last synced: about 2 months ago
JSON representation
:white_check_mark: - Desafio Validação e Segurança
- Host: GitHub
- URL: https://github.com/carloshenriquefs/validation-and-security
- Owner: carloshenriquefs
- License: mit
- Created: 2023-09-29T01:23:30.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-05T03:15:32.000Z (about 1 year ago)
- Last Synced: 2023-10-05T14:24:20.701Z (about 1 year ago)
- Topics: challenge, java, tdd, testes-integracao
- Language: Java
- Homepage:
- Size: 108 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# :construction: - Challenge - Validation And Security
* Implemente as funcionalidades necessárias para que os testes passem;
* Desenvolvimento TDD de API Rest com Java e Spring Boot;
* Implementação de segurança com Spring Security e OAuth2;
* Controle de acesso por rotas e perfis de usuário;
* Validação de dados com Bean Validation;##
## :clipboard: - Diagrama:
![validacao drawio](https://github.com/carloshenriquefs/validation-and-security/assets/54969405/5cb57358-d2a7-4985-a585-745c4da048f9)
##
## :gear: - Endpoints:
#### :house: - City:
- findAll()
- insert()##
#### :microphone: - Event:
- findAll()
- insert()##
## :hourglass: - Testes:
#### :derelict_house: - City:
- insertShouldReturn401WhenNoUserLogged()
- insertShouldReturn403WhenClientLogged()
- insertShouldInsertResourceWhenAdminLoggedAndCorrectData()
- insertShouldReturn422WhenAdminLoggedAndBlankName()
- findAllShouldReturnAllResourcesSortedByName()
#### :microphone: - Event:- insertShouldReturn401WhenNoUserLogged()
- insertShouldInsertResourceWhenClientLoggedAndCorrectData()
- insertShouldInsertResourceWhenAdminLoggedAndCorrectData()
- insertShouldReturn422WhenAdminLoggedAndBlankName()
- insertShouldReturn422WhenAdminLoggedAndPastDate()
- insertShouldReturn422WhenAdminLoggedAndNullCity()
- findAllShouldReturnPagedResources()##
### :white_check_mark: - Critérios:
##
- [x] - POST /events deve retornar 401 Unauthorized para usuário não logado;
- [x] - POST /events deve retornar 201 Created para CLIENT logado e dados corretos;
- [x] - POST /events deve retornar 201 Created para ADMIN logado e dados corretos;
- [x] - POST /events deve retornar 422 Unproccessable Entity para ADMIN logado e nome em branco;
- [x] - POST /events deve retornar 422 Unproccessable Entity para ADMIN logado e data no passado;
- [x] - POST /events deve retornar 422 Unprocessable Entity para ADMIN logado e cidade nula;
- [x] - GET /events deve retornar 200 Ok com página de recursos;
- [x] - POST /cities deve retornar 401 Unauthorized para usuário não logado;
- [x] - POST /cities deve retornar 403 Forbidden para CLIENT logado;
- [x] - POST /cities deve retornar 201 Created para ADMIN logado e dados corretos;
- [x] - POST /cities deve retornar 422 Unprocessable Entity para ADMIN logado e nome em branco;
- [x] - GET /cities deve retornar 200 Ok com todos recursos ordenados por nome;