- Added cancelPublicBooking handler to manage booking cancellations. - Updated public booking service to include cancellation logic. - Created cancelPublicBooking schema for input validation. - Modified public booking confirmation page to allow users to cancel their bookings. - Enhanced email service to send cancellation confirmation emails. - Made customerEmail field required in booking schemas and updated related components. - Updated API client to support cancellation requests. - Added migration to enforce non-nullable customer_email fields in the database.
To install dependencies:
bun install
To run:
bun run dev
Tests
Run all backend tests:
bun run test
Test naming convention
*.test.tsor*.spec.ts: service-level tests. These run with the shared Prisma preload attest/support/prisma.mock.ts.*.handler.test.ts: handler-level tests. These should mock the service module locally withmock.module(...)and import the handler after the mock is in place.
Recommended pattern
- Keep business logic tests focused on the service layer.
- Use handler tests only to verify request parsing, status mapping, and response shaping.
- Put shared Prisma mocking helpers in
test/support/.