11import { expect } from "@playwright/test" ;
22
33import prisma from "@calcom/prisma" ;
4+ import type { Page } from "@playwright/test" ;
45
56import { test } from "./lib/fixtures" ;
67import { selectFirstAvailableTimeSlotNextMonth , submitAndWaitForResponse } from "./lib/testUtils" ;
78
89test . describe . configure ( { mode : "parallel" } ) ;
910test . afterEach ( ( { users } ) => users . deleteAll ( ) ) ;
1011
12+ async function goToAppsTab ( page : Page , eventTypeId ?: number ) {
13+ await page . goto ( `event-types/${ eventTypeId } ?tabName=apps` ) ;
14+ await expect ( page . getByTestId ( "vertical-tab-apps" ) ) . toHaveAttribute ( "aria-current" , "page" ) ;
15+ }
16+
1117test . describe ( "Payment app" , ( ) => {
1218 test ( "Should be able to edit alby price, currency" , async ( { page, users } ) => {
1319 const user = await users . create ( ) ;
@@ -29,7 +35,7 @@ test.describe("Payment app", () => {
2935 } ,
3036 } ) ;
3137
32- await page . goto ( `event-types/ ${ paymentEvent ?. id } ?tabName=apps` ) ;
38+ await goToAppsTab ( page , paymentEvent ?. id ) ;
3339
3440 await page . locator ( "#event-type-form" ) . getByRole ( "switch" ) . click ( ) ;
3541 await page . getByPlaceholder ( "Price" ) . click ( ) ;
@@ -75,7 +81,7 @@ test.describe("Payment app", () => {
7581 } ,
7682 } ) ;
7783
78- await page . goto ( `event-types/ ${ paymentEvent ?. id } ?tabName=apps` ) ;
84+ await goToAppsTab ( page , paymentEvent ?. id ) ;
7985 await page . locator ( "#event-type-form" ) . getByRole ( "switch" ) . click ( ) ;
8086 await page . getByTestId ( "stripe-currency-select" ) . click ( ) ;
8187 await page . getByTestId ( "select-option-usd" ) . click ( ) ;
@@ -115,7 +121,7 @@ test.describe("Payment app", () => {
115121 } ,
116122 } ) ;
117123
118- await page . goto ( `event-types/ ${ paymentEvent ?. id } ?tabName=apps` ) ;
124+ await goToAppsTab ( page , paymentEvent ?. id ) ;
119125
120126 await page . locator ( "#event-type-form" ) . getByRole ( "switch" ) . click ( ) ;
121127
@@ -158,7 +164,7 @@ test.describe("Payment app", () => {
158164 } ,
159165 } ) ;
160166
161- await page . goto ( `event-types/ ${ paymentEvent ?. id } ?tabName=apps` ) ;
167+ await goToAppsTab ( page , paymentEvent ?. id ) ;
162168
163169 await page . locator ( "#event-type-form" ) . getByRole ( "switch" ) . click ( ) ;
164170
@@ -185,7 +191,7 @@ test.describe("Payment app", () => {
185191 } ,
186192 } ) ;
187193
188- await page . goto ( `event-types/ ${ paymentEvent ?. id } ?tabName=apps` ) ;
194+ await goToAppsTab ( page , paymentEvent ?. id ) ;
189195
190196 await page . locator ( "#event-type-form" ) . getByRole ( "switch" ) . click ( ) ;
191197
@@ -220,7 +226,7 @@ test.describe("Payment app", () => {
220226 } ,
221227 } ) ;
222228
223- await page . goto ( `event-types/ ${ paymentEvent ?. id } ?tabName=apps` ) ;
229+ await goToAppsTab ( page , paymentEvent ?. id ) ;
224230
225231 await page . locator ( "#event-type-form" ) . getByRole ( "switch" ) . click ( ) ;
226232 // make sure Tracking ID is displayed
@@ -267,7 +273,7 @@ test.describe("Payment app", () => {
267273 ] ,
268274 } ) ;
269275
270- await page . goto ( `event-types/ ${ paymentEvent . id } ?tabName=apps` ) ;
276+ await goToAppsTab ( page , paymentEvent ? .id ) ;
271277
272278 await page . locator ( "[data-testid='paypal-app-switch']" ) . click ( ) ;
273279 await page . locator ( "[data-testid='stripe-app-switch']" ) . isDisabled ( ) ;
@@ -314,7 +320,7 @@ test.describe("Payment app", () => {
314320 ] ,
315321 } ) ;
316322
317- await page . goto ( `event-types/ ${ paymentEvent . id } ?tabName=apps` ) ;
323+ await goToAppsTab ( page , paymentEvent ? .id ) ;
318324
319325 await page . getByTestId ( "paypal-app-switch" ) . click ( ) ;
320326 await page . getByTestId ( "paypal-price-input" ) . fill ( "100" ) ;
0 commit comments