qe-fe-automation
Version:
FE test automation framework using cypress
63 lines (53 loc) • 2.39 kB
text/typescript
import { AdminPayment, LoginPage } from '@admin-lib/index';
import { PaymentMethods, PaymentCheckout } from '@profile-lib/index';
import { paymentMethodData } from '@fixtures/payment-method/payment-method-data';
import { CommerceApiIntercepts } from '@commerce-lib/api-intercepts';
import { stagingUsers } from '@fixtures/staging-users';
import { OnboardingGuide } from '@growth-lib/onboarding-guide';
import { GrowthInterceptApis } from '@growth-lib/api-intercept';
import { UtilityIntercept } from '@utility-lib/api-intercept';
import { HotelInterceptApis } from '@hotel-lib/api-intercept';
import { hotelBooking } from '@hotel-lib/search_model';
const travelPlannerPassword = Cypress.env('newUser')?.NEW_USER_PASSWORD;
describe('Commerce: Save company card during Checkout page', () => {
beforeEach(() => {
const { payment_method_user } = stagingUsers;
LoginPage.clearExistingLoginSession();
LoginPage.visitTALoginPage();
LoginPage.loginWithCredentials(
payment_method_user.email,
travelPlannerPassword,
'legacy'
);
GrowthInterceptApis.interceptApis();
CommerceApiIntercepts.interceptCommerceApis();
UtilityIntercept.interceptBaseApis();
HotelInterceptApis.interceptHotelApis();
OnboardingGuide.verifyOnboardingGuideOpen();
OnboardingGuide.closeOnboardingGuide();
});
it.skip(
'C667103: Should not be able to SAVE personal card on checkout',
{ tags: ['@tier1'] },
() => {
hotelBooking('Business', false);
PaymentCheckout.addCardInCheckout();
PaymentCheckout.chooseTypeOfCard(0);
PaymentMethods.verifyIsSaveCardToggleOnCorrectMode(false);
PaymentCheckout.chooseTypeOfCard(1);
PaymentMethods.verifyIsSaveCardToggleOnCorrectMode(true);
// Add a company card
PaymentMethods.enterNickname(paymentMethodData.nickname);
PaymentMethods.enterFullName();
PaymentMethods.enterPaymentMethodInfo();
PaymentMethods.clickOnSaveCardToggle();
PaymentMethods.chooseAvailableForGuest(true);
PaymentMethods.clickOnSavePayment();
PaymentCheckout.checkIfCardIsSelected(paymentMethodData.nickname);
PaymentCheckout.checkIfCardIsInList(paymentMethodData.nickname);
AdminPayment.visitPage();
AdminPayment.checkNewCardName(paymentMethodData.nickname);
AdminPayment.deleteCard(paymentMethodData.nickname);
}
);
});