feat: add E2E Playwright tests for booking flow#74
feat: add E2E Playwright tests for booking flow#74devin-ai-integration[bot] wants to merge 1 commit into
Conversation
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
There was a problem hiding this comment.
🚩 Significant overlap with existing booking-pages.e2e.ts tests
Several tests in this new file closely duplicate scenarios already covered in apps/web/playwright/booking-pages.e2e.ts. For example, the "can book with additional guests" test (line 95-113) mirrors the existing "can book with multiple guests" test at apps/web/playwright/booking-pages.e2e.ts:340-363, and the "can complete the full booking flow end-to-end" test (line 63-75) effectively does what bookFirstEvent already tests at apps/web/playwright/booking-pages.e2e.ts:157-159. This isn't a bug, but it adds E2E execution time without clear incremental coverage. Worth clarifying whether this file is intended to replace sections of booking-pages.e2e.ts or serve a distinct purpose.
Was this helpful? React with 👍 or 👎 to provide feedback.
There was a problem hiding this comment.
Good observation. This file is intended as a self-contained, focused E2E suite specifically for the public booking flow (navigate → select slot → fill details → confirm). While there is some overlap with booking-pages.e2e.ts, that file covers a broader set of concerns (SSR/OG tags, special characters, prefill, layouts, reschedule, cancellation, slot reservation).
This file groups the core happy-path booking scenarios in one place for readability. If the team prefers consolidating into booking-pages.e2e.ts to avoid the extra execution time, happy to refactor — leaving as-is for now since the overlap is partial and the intent is distinct.
What does this PR do?
Adds a new Playwright E2E test file (
apps/web/playwright/booking-flow.e2e.ts) covering the public booking flow with 7 tests across 3 describe blocks:Public page navigation:
Attendee details and confirmation:
bookTimeSlothelper, verify success pageAdditional options:
Uses the existing test fixtures (
users.create,users.deleteAll) and helpers (selectFirstAvailableTimeSlotNextMonth,bookTimeSlot,confirmBooking) — no new dependencies.Visual Demo
Video Demo:
Mandatory Tasks
How should this be tested?
yarn workspace @calcom/prisma db-seed).envsetupChecklist
Link to Devin session: https://partner-workshops.devinenterprise.com/sessions/4d0b0df78ed9415d87251b612a91945d
Requested by: @bsmitches