- Added `price` field to `CourtBookingScalarFieldEnum` in `prismaNamespace.ts` and `prismaNamespaceBrowser.ts`. - Updated `CourtBooking` model to include average and sum aggregations for `price`. - Enhanced input types and aggregate input types to support `price`. - Modified `public-booking.service.ts` to calculate and return price information for bookings. - Updated frontend components to display price information in booking confirmation and selection pages. - Introduced `priceRangeSchema` in API contract to validate price ranges.
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/.