UNPKG

qe-fe-automation

Version:
91 lines (78 loc) 3.04 kB
import { LoginPage } from '@admin-lib/index'; import { User_Type } from '@support-onboard/index'; import { Hotels, HotelSearchResults, HotelItinerary, HotelCheckout, HotelInterceptApis } from '@hotel-lib/index'; import { PaymentMethods, PaymentCheckout } from '../../../profile/lib'; import { paymentMethodData } from '@fixtures/payment-method/payment-method-data'; import { CommerceApiIntercepts } from '@commerce-shared-lib/api-intercepts'; import { LocationUtility } from '@utility-lib/location'; describe('Commerce: Payment during Checkout page', () => { beforeEach(() => { LoginPage.createNewCompanyAndLoginWithUserByType({ providers: [], users: [User_Type.TRAVELER] }); CommerceApiIntercepts.interceptCommerceApis(); HotelInterceptApis.interceptHotelApis(); Hotels.visitHotelSearch(); Hotels.setCheckInCheckOutDate(); Hotels.selectHotelLocation(LocationUtility.getCityUS()); Hotels.searchHotel(); HotelSearchResults.selectPrepayHotel(); HotelSearchResults.selectHotel(0); HotelSearchResults.selectPrepayRoomFilter(); HotelSearchResults.selectRoomOption(); HotelCheckout.waitToBeLoaded(); HotelCheckout.setTripInfo(); HotelCheckout.hotelCancellationAndChargePolicy(); HotelCheckout.acceptHotelBookingPolicy(); HotelCheckout.setPhoneNumber(); HotelCheckout.checkIfProofOfVaccineRequired(); PaymentCheckout.addCardInCheckout(); }); afterEach(() => { HotelCheckout.acceptAcknowledgement(); HotelCheckout.bookNow(); HotelCheckout.expectHotelBookedSuccessfully('Hotel confirmed!'); HotelItinerary.verifyHotelItineraryPage(); // Deleting card after completing checkout PaymentMethods.visitPage(); PaymentMethods.deletePaymentMethod(1); }); it( 'C667105 C667104: Should be able to add and edit a personal card to profile from checkout', { tags: ['@tier1'] }, () => { PaymentCheckout.chooseTypeOfCard(0); // Adding a personal card PaymentMethods.enterNickname(paymentMethodData.nickname); PaymentMethods.enterFullName(); PaymentMethods.enterPaymentMethodInfo(); PaymentMethods.clickOnSavePayment(); PaymentCheckout.checkIfCardIsSelected(paymentMethodData.nickname); PaymentCheckout.checkIfCardIsInList(paymentMethodData.nickname); // Editing a personal card PaymentMethods.editCard(1); PaymentCheckout.checkIfCardIsInList(paymentMethodData.creditCard._fullName); } ); it( 'C667103: Should be able to add a company card to profile from checkout', { tags: ['@tier1'] }, () => { PaymentCheckout.chooseTypeOfCard(1); // Add a company card PaymentMethods.enterNickname(paymentMethodData.nickname); PaymentMethods.enterFullName(); PaymentMethods.enterPaymentMethodInfo(); PaymentMethods.clickOnSavePayment(); PaymentCheckout.checkIfCardIsSelected(paymentMethodData.nickname); PaymentCheckout.checkIfCardIsInList(paymentMethodData.nickname); } ); });