UNPKG

qe-fe-automation

Version:
72 lines (57 loc) 2.3 kB
import { BlackCar, BlackCarCheckout, BlackCarItinerary, BlackCarLocation, BlackCarInterceptApis, BlackCarSearchResults } from '@blackCar-lib/index'; import { LoginPage } from '@admin-lib/index'; import { TripTileType, Random } from '@utility-lib/index'; import { blackCarsProvider } from '@fixtures/black_car'; import { Provider_Type, User_Type } from '@support-onboard/index'; export class BlackCarBookingModel { static blackCarBookingOneWay = ( pickUpLocation: BlackCarLocation, dropOffLocation: BlackCarLocation, tripTileType: TripTileType ) => { BlackCarInterceptApis.interceptBlackCarApis(); BlackCar.visitBlackCarSearch(tripTileType); BlackCar.selectPickUpLocation(pickUpLocation.location); BlackCar.setAirlineDetailsAndVerify(pickUpLocation); BlackCar.selectDropOffLocation(dropOffLocation.location); BlackCar.setAirlineDetailsAndVerify(dropOffLocation); BlackCar.setPickUpAndDropOffDate(); BlackCar.searchBlackCar(); BlackCarSearchResults.selectCar(blackCarsProvider); BlackCarCheckout.waitToBeLoaded(); BlackCarCheckout.setTripInfo(); BlackCarCheckout.verifyLocation(pickUpLocation.location); BlackCarCheckout.verifyLocation(dropOffLocation.location); BlackCar.getDataFromCachedPickUpDateAndPassToFunction( BlackCarCheckout.verifyPickUpDate ); BlackCarCheckout.verifyFlightDetails(pickUpLocation); BlackCarCheckout.verifyFlightDetails(dropOffLocation); BlackCarCheckout.updateEmailDetails( 'dummy-' + Random.randomString(5) + '@staging-prime.tripactions.xyz' ); BlackCarCheckout.storeEstimatedTotal(); BlackCarCheckout.expectPaymentMethodPresent(); BlackCarCheckout.checkOutCar(); BlackCarCheckout.expectBlackCarBookingSuccessfully(); BlackCarCheckout.visitItineraryPageFromBookingSuccessModal(); BlackCarItinerary.verifyBlackCarItineraryPage(); BlackCarItinerary.verifyTripTile(tripTileType); BlackCarItinerary.getDataFromCachedEstimatedTotalAndVerify(); }; static blackCarEnablePolicy = () => { LoginPage.createNewCompanyAndLoginWithUserByType({ providers: [Provider_Type.ALL_CAR], users: [User_Type.ADMIN] }); cy.enableBlackCarPolicy(); BlackCarInterceptApis.interceptBlackCarApis(); }; }