Skip to content

rodrigobsjava/validador-senha-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔐 Validador de Senha API — v1

API desenvolvida em Java 17 + Spring Boot 3, seguindo arquitetura DDD (Domain-Driven Design) e metodologia TDD (Test-Driven Development). O objetivo é validar senhas com base em critérios mínimos de segurança.


🧠 Objetivo do Projeto

Praticar os fundamentos de:

  • Arquitetura limpa (Domain → Application → Infrastructure)

  • Desenvolvimento orientado a testes (TDD)

  • Testes unitários e de controller com MockMvc

  • Boas práticas para validação de dados


🚀 Tecnologias Utilizadas

  • Java 17

  • Spring Boot 3

  • Maven

  • JUnit 5

  • Mockito

  • MockMvc


🗂️ Estrutura do Projeto


validador-senha-api-v1/
├── src/main/java/com/rodrigobsjava/senhaapi/
│   ├── SenhaApiApplication.java
│   ├── domain/
│   │   ├── ValidadorService.java
│   │   └── ResultadoValidado.java
│   ├── application/
│   │   └── ValidarSenhaUseCase.java
│   └── infrastructure/web/
│       ├── SenhaController.java
│       └── dto/
│           ├── SenhaRequest.java
│           └── SenhaResponse.java
└── src/test/java/com/rodrigobsjava/senhaapi/
    ├── domain/ValidadorServiceTest.java
    ├── application/ValidarSenhaUseCaseTest.java
    └── infrastructure/web/SenhaControllerTest.java


📡 Endpoint Principal

POST /api/senha/validar

📥 Request Body

{
  "senha": "Abc123!@#"
}

📤 Response Body (válida)

{
  "valida": true
}

📤 Response Body (inválida)

{
  "erro": "A senha deve conter pelo menos um número."
}

🧪 Testes

Executar testes

mvn clean test

▶️ Rodar a aplicação

mvn spring-boot:run

🧑‍💻 Autor

Rodrigo Barbosa de Sousa 📍 Manaus - AM, Brasil

🔗 LinkedIn

💻 GitHub


🧾 Licença

Este projeto é distribuído sob a licença MIT.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages