qe-fe-automation
Version:
FE test automation framework using cypress
40 lines (37 loc) • 1.63 kB
text/typescript
import { LoginPage } from '@admin-lib/index';
import { User_Type } from '@support-onboard/data_model/user_type';
import { TrainSearchResults, CheckoutModal, TrainInterceptApis } from '@train-lib/index';
import { TripApproval, CreateProposal, TripProposalInterceptApis, TripProposalBooking } from '@tripProposal-lib/index';
const newUserCredentials = Cypress.env('newUser').NEW_USER_PASSWORD;
describe('Train: Trip proposal', () => {
beforeEach(() => {
TripProposalInterceptApis.tripIntercepts();
TrainInterceptApis.interceptTrainApis();
LoginPage.createNewCompanyAndLoginWithUserByType({
users: [User_Type.ADMIN],
tripProposal: true
});
cy.enableTripProposal();
});
it('C619959 C51019: Verify train booking via trip proposal flow', { tags: ['@tier1'] }, () => {
LoginPage.createNewTravelerAndLogin();
CreateProposal.visitNewTripProposalPage();
CreateProposal.setTripName();
CreateProposal.setTripReason();
CreateProposal.setBookingType('train');
TripProposalBooking.trainBooking();
CreateProposal.sendProposal();
CreateProposal.sendRequestToManager();
CreateProposal.loginAsAdmin(newUserCredentials);
CreateProposal.visitAdminPage();
TripApproval.viewApproval('APPROVALS_PROPOSALS');
TripApproval.expectTripProposalIsCreated('Berlin Trip');
TripApproval.approveTripProposal();
CreateProposal.loginAsTraveler();
CreateProposal.visitNewTripProposalPage();
TripProposalBooking.startBooking();
TrainSearchResults.expectSearchResultPresent();
TrainSearchResults.selectTrain(1);
CheckoutModal.checkout();
});
});