qe-fe-automation
Version:
FE test automation framework using cypress
69 lines (65 loc) • 2.59 kB
text/typescript
import { LoginPage } from '@admin-lib/index';
import {
BlackCar,
BlackCarCheckout,
BlackCarItinerary,
BlackCarLocation,
BlackCarSearchResults,
BlackCarTripType,
BlackCarUtility
} from '@blackCar-lib/index';
import { User_Type } from '@support-onboard/index';
import { LocationUtility } from '@utility-lib/index';
import {
airlineInfo,
blackCarsProvider,
providerHourlyDisclaimer
} from '@fixtures/black_car';
import { createBookHotelData } from '@fixtures/hotel/booking_data';
import { HotelInterceptApis, HotelItinerary } from '@hotel-lib/index';
describe('Black car: Add to existing trip', () => {
beforeEach(() => {
BlackCarUtility.prepareCompanyAndLogin(User_Type.ADMIN);
cy.enableBlackCarPolicy();
LoginPage.createHotelBookingForOnBoardingCompany(createBookHotelData());
HotelInterceptApis.interceptHotelApis();
const location: BlackCarLocation = {
location: LocationUtility.getRentalCarAirportUS(),
airlineInfo: airlineInfo.airlineInfoPickUp
};
cy.wrap(location).as('pickUpLocation');
});
it(
'C98187: Should be able to add hourly black car with airport location to existing trip',
{ tags: ['@tier1'] },
function () {
const blackCar = 'Black car';
HotelItinerary.visitItinerary();
HotelItinerary.viewAndManageItinerary();
HotelItinerary.addNewTripInCurrentItinerary(blackCar);
BlackCar.selectTripTileType(BlackCarTripType.HOURLY);
BlackCar.selectDuration();
BlackCar.selectPickUpLocation(this.pickUpLocation.location);
BlackCar.setAirlineDetailsAndVerify(this.pickUpLocation);
BlackCar.setPickUpAndDropOffDate();
BlackCar.searchBlackCar();
BlackCarSearchResults.selectProvider(blackCarsProvider);
BlackCarSearchResults.selectCar(blackCarsProvider);
BlackCarCheckout.verifyTripInfoActionsIsNotVisible();
BlackCarCheckout.verifyLocation(this.pickUpLocation.location);
BlackCar.getDataFromCachedPickUpDateAndPassToFunction(
BlackCarCheckout.verifyPickUpDate
);
BlackCarCheckout.verifyFlightDetails(this.pickUpLocation);
BlackCarCheckout.verifyImportantNotesDisclaimer(providerHourlyDisclaimer);
BlackCarCheckout.expectPaymentMethodPresent();
BlackCarCheckout.checkOutCar();
BlackCarCheckout.expectBlackCarBookingSuccessfully();
BlackCarCheckout.visitItineraryPageFromBookingSuccessModal();
BlackCarItinerary.waitToBeLoaded();
BlackCar.getDataFromCachedPickUpDateAndPassToFunction(
BlackCarItinerary.verifyTripTimelineItem
);
}
);
});