@@ -63,7 +63,7 @@ test.describe("Bookings", () => {
63
63
} ) ;
64
64
} ) ;
65
65
test . describe ( "Past bookings" , ( ) => {
66
- test ( "Mark first guest as no-show" , async ( { page, users, bookings } ) => {
66
+ test ( "Mark first guest as no-show" , async ( { page, users, bookings, webhooks } ) => {
67
67
const firstUser = await users . create ( ) ;
68
68
const secondUser = await users . create ( ) ;
69
69
@@ -81,10 +81,9 @@ test.describe("Bookings", () => {
81
81
] ,
82
82
} ) ;
83
83
const bookingWhereFirstUserIsOrganizer = await bookingWhereFirstUserIsOrganizerFixture . self ( ) ;
84
-
85
84
await firstUser . apiLogin ( ) ;
85
+ const webhookReceiver = await webhooks . createReceiver ( ) ;
86
86
await page . goto ( `/bookings/past` ) ;
87
- await page . pause ( ) ;
88
87
const pastBookings = page . locator ( '[data-testid="past-bookings"]' ) ;
89
88
const firstPastBooking = pastBookings . locator ( '[data-testid="booking-item"]' ) . nth ( 0 ) ;
90
89
const titleAndAttendees = firstPastBooking . locator ( '[data-testid="title-and-attendees"]' ) ;
@@ -96,6 +95,23 @@ test.describe("Bookings", () => {
96
95
await firstGuest . click ( ) ;
97
96
await expect ( titleAndAttendees . locator ( '[data-testid="unmark-no-show"]' ) ) . toBeVisible ( ) ;
98
97
await expect ( titleAndAttendees . locator ( '[data-testid="mark-no-show"]' ) ) . toBeHidden ( ) ;
98
+ await webhookReceiver . waitForRequestCount ( 1 ) ;
99
+ const [ request ] = webhookReceiver . requestList ;
100
+ const body = request . body ;
101
+ // remove dynamic properties that differs depending on where you run the tests
102
+ const dynamic = "[redacted/dynamic]" ;
103
+ // @ts -expect-error we are modifying the object
104
+ body . createdAt = dynamic ;
105
+ expect ( body ) . toMatchObject ( {
106
+ triggerEvent : "BOOKING_NO_SHOW_UPDATED" ,
107
+ createdAt : "[redacted/dynamic]" ,
108
+ payload : {
109
+ message : "x_marked_as_no_show" ,
110
+ attendees : [ { email : "first@cal.com" , noShow : true , utcOffset : null } ] ,
111
+ bookingUid : bookingWhereFirstUserIsOrganizer ?. uid ,
112
+ } ,
113
+ } ) ;
114
+ webhookReceiver . close ( ) ;
99
115
} ) ;
100
116
test ( "Mark 3rd attendee as no-show" , async ( { page, users, bookings } ) => {
101
117
const firstUser = await users . create ( ) ;
0 commit comments