UNPKG

qe-fe-automation

Version:
35 lines (31 loc) 1.16 kB
import { TrainCancellation, TrainTripType, tripItinerarySelectors } from '@train-lib/index'; import { Timeouts } from '@utility-lib/constants'; import { utilitySelector } from '@utility-lib/utility'; export class CancellationFlow { static executeTrainCancellation(eTicket: string, tripType: string) { cy.contains(`${eTicket}`); cy.wait(Timeouts.MAX_TIMEOUT_120_SEC.timeout); cy.reload(); cy.get(utilitySelector.bodySelector).then((btn) => { if (btn.find(tripItinerarySelectors.cancelUnavailable).length > 0) { cy.wait(Timeouts.MEDIUM_TIMEOUT_60_SEC.timeout); cy.reload(); cy.get(tripItinerarySelectors.cancelTicket).click(); } else { cy.get(tripItinerarySelectors.cancelTicket).click(); } }); cy.wait('@waitForBookingStatusUpdate'); cy.allure().logStep('cancel trip button clicked'); if (tripType === TrainTripType.ONEWAY) { TrainCancellation.oneWaySegmentSelectionCancellation(); } else if (tripType === TrainTripType.ROUND_TRIP) { TrainCancellation.roundSegmentsSelectionCancellation(); } TrainCancellation.cancellationCheckout(); } }