tercul-backend/internal/adapters/graphql
google-labs-jules[bot] c2e9a118e2 feat(testing): Increase test coverage and fix authz bugs
This commit significantly increases the test coverage across the application and fixes several underlying bugs that were discovered while writing the new tests.

The key changes include:

- **New Tests:** Added extensive integration and unit tests for GraphQL resolvers, application services, and data repositories, substantially increasing the test coverage for packages like `graphql`, `user`, `translation`, and `analytics`.

- **Authorization Bug Fixes:**
  - Fixed a critical bug where a user creating a `Work` was not correctly associated as its author, causing subsequent permission failures.
  - Corrected the authorization logic in `authz.Service` to properly check for entity ownership by non-admin users.

- **Test Refactoring:**
  - Refactored numerous test suites to use `testify/mock` instead of manual mocks, improving test clarity and maintainability.
  - Isolated integration tests by creating a fresh admin user and token for each test run, eliminating test pollution.
  - Centralized domain errors into `internal/domain/errors.go` and updated repositories to use them, making error handling more consistent.

- **Code Quality Improvements:**
  - Replaced manual mock implementations with `testify/mock` for better consistency.
  - Cleaned up redundant and outdated test files.

These changes stabilize the test suite, improve the overall quality of the codebase, and move the project closer to the goal of 80% test coverage.
2025-10-09 07:03:45 +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
auth_mutations_test.go test: Add tests for ChangePassword mutation 2025-10-08 19:41:05 +00:00
author_resolvers_test.go feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +00:00
binding.go feat(analytics): Enhance analytics capabilities 2025-09-07 19:26:51 +00:00
book_resolvers_test.go feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +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 feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +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 feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +00:00
translation_resolvers_test.go feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +00:00
user_mutations_test.go test: Increase test coverage for work package to over 80% 2025-10-08 20:45:49 +00:00
user_resolvers_unit_test.go feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +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
work_resolvers_test.go feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +00:00
work_resolvers_unit_test.go feat(testing): Increase test coverage and fix authz bugs 2025-10-09 07:03:45 +00:00