Skip to content

refactor: introduce UseCase interface#4

Merged
allisson merged 2 commits intomainfrom
usecase-interface
Jan 24, 2026
Merged

refactor: introduce UseCase interface#4
allisson merged 2 commits intomainfrom
usecase-interface

Conversation

@allisson
Copy link
Owner

  • Add UseCase interface in user/usecase package defining core operations
  • Update UserUseCase constructor to return UseCase interface instead of concrete type
  • Refactor DI container to use UseCase interface throughout
  • Update HTTP server and handler to depend on UseCase interface
  • Remove duplicate UserUseCaseInterface from HTTP handler
  • Remove internal field assertion in usecase test

This change improves testability and decouples HTTP layer from concrete usecase implementation, following dependency inversion principle.

- Add UseCase interface in user/usecase package defining core operations
- Update UserUseCase constructor to return UseCase interface instead of concrete type
- Refactor DI container to use UseCase interface throughout
- Update HTTP server and handler to depend on UseCase interface
- Remove duplicate UserUseCaseInterface from HTTP handler
- Remove internal field assertion in usecase test

This change improves testability and decouples HTTP layer from concrete
usecase implementation, following dependency inversion principle.
@allisson allisson merged commit a3ae3be into main Jan 24, 2026
1 check passed
@allisson allisson deleted the usecase-interface branch January 24, 2026 14:30
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