Skip to content

feat(e2e): add E2E coverage for course syllabus, enrollment status, progress, and quiz attempts endpoints - #761

Merged
DeFiVC merged 1 commit into
ChainLearnOfficial:mainfrom
Cyber-Mitch:test/626-629-course-e2e
Nov 2, 2026
Merged

DeFiVC merged 1 commit into
ChainLearnOfficial:mainfrom
Cyber-Mitch:test/626-629-course-e2e

Conversation

@Cyber-Mitch

Copy link
Copy Markdown
Contributor

Closes #626 • Closes #627 • Closes #628 • Closes #629

Summary

Adds full request/response-cycle E2E test coverage for four course endpoints that previously had none, seeded against a real Postgres + Redis test database.

Per issue

Issue Test file Endpoint
#626 tests/e2e/course-progress.test.ts GET /api/v1/users/me/courses/:courseId/progress
#627 tests/e2e/course-syllabus.test.ts GET /api/v1/courses/:id/syllabus
#628 tests/e2e/enrollment-status.test.ts GET /api/v1/courses/:id/enrollment-status
#629 tests/e2e/quiz-attempts.test.ts GET /api/v1/courses/:id/modules/:moduleId/quiz-attempts

Coverage per file

  • 401 unauthenticated, 400 malformed id, 404 missing/inactive course
  • Different states: not-enrolled/enrolled/completed; zero/partial/full progress; passed/failed/superseded/unscored attempts
  • Ordering: module order, oldest-first attempts, syllabus ordering
  • Caller isolation and cross-course isolation

Verification

All 4 new test files pass (31 tests total):

@DeFiVC
DeFiVC merged commit 230e19b into ChainLearnOfficial:main Nov 2, 2026
3 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants