qe-fe-automation
Version:
FE test automation framework using cypress
54 lines (48 loc) • 2.05 kB
text/typescript
import { RentalCar } from '@rentalCar-lib/search';
import { LocationUtility } from '@utility-lib/location';
import { TrainSearch } from '@train-lib/search';
import { FakeProviderStations } from '@train-lib/trip_data';
import { Timeouts } from '@utility-lib/index';
import { createTripProposal } from './create_proposal';
export class TripProposalBooking {
static expectTripProposalBookingSuccessfully() {
cy.get('[class^="information__content__subject"]').should('be.contain', 'Your Trip is all booked!');
cy.allure().logStep('Trip proposal booking successfully');
}
static trainBooking() {
const origin = FakeProviderStations.DepartureStation;
const destination = FakeProviderStations.DestinationStation;
TrainSearch.setOrigin(origin);
TrainSearch.setDestination(destination);
TrainSearch.selectFutureTrainDate();
cy.wait(Timeouts.SHORT_TIMEOUT_3_SEC.timeout);
cy.get('body').then(($button) => {
if ($button.length > 0) {
cy.get(createTripProposal.removeLOB).eq(0).click();
cy.wait(Timeouts.SHORT_TIMEOUT_3_SEC.timeout);
cy.get(createTripProposal.bookingTypeVerticalOption('train')).click();
TrainSearch.setOrigin(origin);
TrainSearch.setDestination(destination);
TrainSearch.selectFutureTrainDate();
}
});
}
static startBooking() {
cy.get(createTripProposal.startBooking).click();
cy.allure().logStep('start booking');
}
static carBooking() {
RentalCar.selectPickUpLocation(LocationUtility.getRentalCarAirportUS());
RentalCar.setPickUpAndDropOffDate();
cy.wait(Timeouts.SHORT_TIMEOUT_3_SEC.timeout);
cy.get('body').then(($button) => {
if ($button.length > 0) {
cy.get(createTripProposal.removeLOB).eq(0).click();
cy.wait(Timeouts.SHORT_TIMEOUT_3_SEC.timeout);
cy.get(createTripProposal.bookingTypeVerticalOption('car')).click();
RentalCar.selectPickUpLocation(LocationUtility.getRentalCarAirportUS());
RentalCar.setPickUpAndDropOffDate();
}
});
}
}