qe-fe-automation
Version:
FE test automation framework using cypress
66 lines (60 loc) • 2.33 kB
text/typescript
import {
FlightCheckout,
Flights,
FlightSearchResults,
FlightTripType,
FlightInterceptApis
} from '@flight-lib/index';
import { factory } from '@admin-factory/index';
import { FlightBookingUtility } from '@flight-modal/index';
import { LoginPage } from '@admin-lib/index';
import { Provider_Type, User_Type } from '@support-onboard/index';
import { Utility } from '@utility-lib/index';
import { GuestInviteUtility, GuestTravelUtility } from '@admin-factory/factory';
import { SplitUtility } from '@split-lib/index';
describe('GME: Round trip flight - guest invite - custom policy OOP', () => {
it(
'C51013: FE - Out of policy booking in the Guest invite',
{ tags: ['@tier2'] },
() => {
FlightInterceptApis.interceptFlightsApis();
LoginPage.createNewCompanyAndLoginWithUserByType({
providers: [Provider_Type.SABRE_FLIGHT],
users: [User_Type.ADMIN]
});
const flightParams = FlightBookingUtility.initFlightBookingParams({
flightTripType: FlightTripType.ROUNDTRIP,
locations: [
'NYC - All Airports, New York, United States, New York, United States'
],
isItEventSearch: true,
checkInType: ' Continue without EarlyBird Check-In® '
});
Flights.createFlightPolicy('flight-invites');
cy.updateSplits();
SplitUtility.isSplitOn('GROUP_TRAVEL_REFACTOR').then((refactored) => {
if (refactored) {
GuestTravelUtility.createGuestTravelForTraveler(
factory.createFlightGuestTravelPolicy
);
} else {
GuestInviteUtility.createGuestInviteForTraveler(
factory.createFlightGuestInvitePolicy
);
}
});
Utility.visitSearchPage();
Flights.setOrigin(flightParams.locations[0]);
Flights.searchFlightGuest();
FlightSearchResults.roundtripSearchResult(flightParams);
FlightCheckout.waitToPageBeLoaded();
FlightCheckout.setTripInfo();
FlightCheckout.checkCancellationPolicy();
FlightCheckout.acceptOutOfPolicyFlightGuestFlow();
FlightCheckout.updateContactDetails();
FlightCheckout.checkIn(flightParams.checkInType);
FlightCheckout.bookAndPay(flightParams);
FlightCheckout.expectFlightSuccessfullyConfirmed(flightParams.flightConfirmText);
}
);
});