tercul-backend/internal/adapters/graphql
google-labs-jules[bot] 66f9d7c725 test: Add tests for DeleteUser mutation and refactor errors
This commit introduces a new test suite for the `DeleteUser` GraphQL mutation in `internal/adapters/graphql/user_mutations_test.go`. The tests cover successful deletion by an admin and by the user themselves, as well as failure cases for invalid permissions, non-existent users, and invalid input.

During the implementation of these tests, an inconsistency in error handling was discovered. The `internal/data/sql` repositories were using a mix of local and domain-level errors. This has been refactored to consistently use the centralized errors defined in the `internal/domain` package. This change improves the robustness and predictability of the data layer.

The following files were modified to standardize error handling:
- internal/data/sql/base_repository.go
- internal/data/sql/book_repository.go
- internal/data/sql/category_repository.go
- internal/data/sql/copyright_repository.go
- internal/data/sql/country_repository.go
- internal/data/sql/edition_repository.go
- internal/data/sql/email_verification_repository.go
- internal/data/sql/password_reset_repository.go
- internal/data/sql/source_repository.go
- internal/data/sql/tag_repository.go
- internal/data/sql/user_profile_repository.go
- internal/data/sql/user_repository.go
- internal/data/sql/user_session_repository.go
- internal/data/sql/work_repository.go
- internal/data/sql/base_repository_test.go
- internal/data/sql/copyright_repository_test.go
2025-10-08 19:18:21 +00:00
..
model Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
.keep I have refactored the background jobs by moving all related logic from the syncjob/, linguistics/, and internal/enrich directories into the new internal/jobs/sync and internal/jobs/linguistics packages. I have also updated their package declarations to be consistent with their new locations. 2025-09-02 15:02:04 +00:00
analytics_service_mock_test.go feat: Complete large-scale refactor and prepare for production 2025-10-07 11:09:37 +00:00
binding.go feat(analytics): Enhance analytics capabilities 2025-09-07 19:26:51 +00:00
errors.go feat: Complete all pending tasks from TASKS.md 2025-10-05 05:26:27 +00:00
generated.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
graphql_test_utils_test.go Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
helpers.go This commit introduces goose as the database migration tool for the project, replacing the previous gorm.AutoMigrate system. It also includes several code quality improvements identified during the refactoring process. 2025-10-03 02:52:01 +00:00
integration_test.go Chore: Clean up lint warnings and improve code quality 2025-10-07 13:14:01 +00:00
like_repo_mock_test.go feat: Complete large-scale refactor and prepare for production 2025-10-07 11:09:37 +00:00
like_resolvers_unit_test.go feat: Complete all pending tasks from TASKS.md 2025-10-05 05:26:27 +00:00
resolver.go refactor: Refactor GraphQL tests to use mock-based unit tests 2025-10-03 09:21:41 +00:00
schema.graphqls Fix: Correct authorization logic in integration tests 2025-10-04 23:48:44 +00:00
schema.resolvers.go This commit introduces a series of significant improvements to bring the codebase closer to a production-ready state. 2025-10-08 17:25:02 +00:00
user_mutations_test.go test: Add tests for DeleteUser mutation and refactor errors 2025-10-08 19:18:21 +00:00
validation.go feat: Implement production-ready API patterns 2025-10-04 18:16:08 +00:00
work_repo_mock_test.go feat: Complete large-scale refactor and prepare for production 2025-10-07 11:09:37 +00:00