Skip to content

Feature/milestone 03 update sb - #64

Merged
lgzarturo merged 3 commits into
mainfrom
feature/milestone-03-update-sb
Sep 5, 2026
Merged

Feature/milestone 03 update sb#64
lgzarturo merged 3 commits into
mainfrom
feature/milestone-03-update-sb

Conversation

@lgzarturo

Copy link
Copy Markdown
Owner

Descripción

Actualizar Spring Boot 4.1.1
Configurar mcp, lsp para el stack del proyecto
Configurar el proyecto con VSCode
Eliminar dependencias sin uso
Se aumenta la cobertura de pruebas para la migracion de SB

Tipo de cambio

  • 🐛 Bug fix (cambio que corrige un issue)
  • ✨ Nueva funcionalidad (cambio que añade funcionalidad)
  • 💥 Breaking change (fix o feature que rompe compatibilidad)
  • 📝 Documentación (cambios solo en docs)
  • 🔧 Configuración/Infra (cambios en CI, Docker, Gradle)
  • ♻️ Refactor (cambio que no corrige bug ni añade feature)
  • ✅ Tests (añadir o corregir tests)

Enfoque TDD

  • Red: escribí test(s) que fallan antes de implementar
  • Green: implementé el código mínimo para pasar los tests
  • Refactor: limpié el código manteniendo tests verdes

Checklist de calidad

  • El código compila sin warnings
  • Todos los tests pasan (./gradlew test)
  • Cobertura de tests ≥ 80% en código nuevo
  • Lint/estilo pasa (./gradlew ktlintCheck o detekt)
  • Documentación actualizada (KDoc, OpenAPI, Wiki si aplica)
  • No expongo entidades JPA en DTOs
  • Manejo de errores consistente (GlobalExceptionHandler)
  • Commits atómicos y mensajes descriptivos

Documentación

  • OpenAPI/Swagger (ejemplos, descripciones)
  • README o Wiki
  • CHANGELOG.md (entrada en [Unreleased])
  • Comentarios KDoc en clases/funciones públicas

Cómo probar

  1. Checkout de la rama: git checkout feature/milestone-03-update-sb<slug>
  2. Ejecutar: ./gradlew clean bootRun
  3. Probar endpoint(s):
    curl http://localhost:8080/api/v1/<endpoint>
  4. Verificar Swagger UI: http://localhost:8080/swagger-ui.html
  5. Ejecutar tests: ./gradlew test

- Añade tests de value objects (Password, PhoneNumber, Email) y
  utilidades (DateTimeExtensions, PageRequest, PageResult)
- Completa UserTest con changePassword, roles y validaciones
- Activa CreateUserServiceTest (stub), GetUserUseCase, UpdateUserUseCase,
  UserMapper, PasswordEncoder y DuplicateEmailException
- Añade ExampleRepositoryAdapterTest y ExampleEntityTest
- Cubre HotelRoomJpaRepository con tests @DataJpaTest (spec, rooms)
- Añade SentryControllerTest con mockkStatic(Sentry)
- Corrige RoomEntity.id nullable y HotelRoomJpaRepository.save con
  flush/clear para que el cascade de habitaciones persista
  correctamente y el filtrado por Specification funcione
- Corrige HotelJpaRepository para usar @EntityGraph override de
  findAll(spec, pageable) en lugar de @query ignorado
- Cobertura: 64.5% -> 93% (supera el 85% requerido)
- Actualiza plugin org.springframework.boot de 4.0.8 a 4.1.1
  (Spring Boot 4.1.1 publicado el 2026-08-20, 98 fixes sobre 4.1.0)
- Elimina dependencias no estándar spring-boot-http-client y
  spring-boot-restclient con versión explícita 4.0.8 (no existen
  como artefactos oficiales; no se usan en src/main, starter
  spring-boot-starter-restclient ya cubre el caso)
- Verificado: ./gradlew clean build pasa (tests 93% cobertura,
  ktlint y detekt verdes)
@lgzarturo
lgzarturo merged commit b6fbe7b into main Sep 5, 2026
9 checks passed
@lgzarturo

Copy link
Copy Markdown
Owner Author

Coverage Report

Overall Project 93.03% -1.69% 🍏
Files changed 79.35%

File Coverage
HotelRoomJpaRepository.kt 88.26% -11.03%
RoomEntity.kt 58.82% -3.92%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant