Add comprehensive test coverage and update documentation #360
No reviewers
Labels
No labels
accessibility
api
auth.js
backend
copy
database
defect
dependencies
design
discussion
documentation
duplicate
enhancement
epic
feature
front-end
good first issue
help wanted
invalid
next.js
noscript
on hold
operations
optimization
postgresql
prisma
prototype
question
react
spike
stale
story
tailwind
vulnerability
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
SSE/WebsiteTheSSEquel!360
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "test/test_overhaul"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Expanded backend/API test coverage across the codebase, added CI checks for lint/test, and refreshed testing documentation to reflect current coverage status and next priorities.
What changed:
Linked Story / Issue
Type of Change
Scope
Validation
From next/:
Manual verification steps:
Database / API / Env Impact
Documentation
Docs updated:
Screenshots / Recordings (if UI changed)
N/A (no UI changes)
Checklist
Pull request overview
This PR migrates backend/API route testing from Jest to Vitest, closes remaining API route test gaps under
next/app/api/**/route.ts, adds CI lint/test workflows, and refreshes contributor + environment/testing documentation to match the new workflow.Changes:
next/app/api/**.Reviewed changes
Copilot reviewed 104 out of 107 changed files in this pull request and generated no comments.
Show a summary per file
Response.jsonin test runtime.@alias and setup file./api/when2meet./api/user/search./api/user./api/user/[id]/profile./api/user/[id]./api/swipe-access./api/sponsor./api/skills./api/skills/[id]./api/scheduleBlock./api/schedule./api/schedule/[id]./api/quotes./api/quotes/[id]./api/purchasing./api/purchasing/[id]./api/purchasing/[id]/email./api/projectContributor./api/projectContributor/[id]./api/project./api/project/[id]./api/officer-positions./api/officer/[active]./api/mentoring-headcount./api/mentorSkill./api/mentorSkill/[id]./api/mentor-semester./api/mentorSchedule./api/mentor-availability/updates./api/mentor-availability./api/mentor-application./api/mentor/[id]./api/mentee-headcount./api/memberships./api/library/uploadImage./api/library/statistics./api/library/search./api/library/isbnlookup./api/library/copies./api/library/categories./api/library/books./api/library/book./api/invitations./api/invitations/pending./api/invitations/acceptand/api/invitations/decline./api/hourBlocks./api/hourBlocks/[id]./api/headcount-trends./api/headcount-import./api/handover/[positionId]./api/golinksmutations./api/golinks/public,/api/golinks/officer, and/api/go/[golink]./api/event./api/event/[id]./api/event/[id]/attendance./purchases,/qr,/flyer)./api/email/send./api/departments./api/departments/[id]./api/courseTaken./api/course./api/course/[id]./api/calendar./api/calendar/[id]./api/aws/profilePictures./api/aws/officerPictures./api/aws/image.authMiddleware./api/authLevel.getGatewayAuthLevel./api/auth/[...nextauth]handler export behavior./api/alumni./api/alumni-requests./api/alumni/email./api/alumni-candidates./api/alumni/[active]..eslintrcconfig (migration to flat config).npm run testundernext/.npm run lintundernext/.Key review findings (need follow-up before merge):
next/app/api/library/book/route.ts: newly addedhasPrivilegedAccess()is unused; also POST now permits missingimagebut still writes animagepath into the DB record, which can create broken links unless the API enforces an image upload or storesnull/omits the path when missing.next/scripts/openCoverageReport.mjs: fallback message printsnext/coverage/index.htmlwhile the opener targetscoverage/index.html(relative). The message/path should match the actual working directory assumptions to avoid confusion..github/workflows/lint.ymland.github/workflows/test.ymltargetbranches: [main, development]while updated docs reference merging intodev; branch naming should be made consistent so CI reliably runs on the intended protected branch.next@16.1.6innext/package-lock.jsonrequires Node>=20.9.0—docs should explicitly call out the minimum Node version expected for local dev to avoid setup failures.💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
LGTM! 🚀 🚀 🚀 🚀 🌕
fuck yeah