qe-fe-automation
Version:
FE test automation framework using cypress
89 lines (81 loc) • 2.81 kB
text/typescript
import { LoginPage } from '@admin-lib/index';
import { TripsPage } from '../lib';
import { Provider_Type, User_Type } from '@support-onboard/index';
import { FlightInterceptApis } from '@flight-lib/index';
import { Passenger, bookPersonalHotel } from '@hotel-lib/search_model';
import { TripTileType } from '@utility-lib/index';
import { HotelInterceptApis, HotelItinerary } from '@hotel-lib/index';
import { FlightBookingUtility } from '@flight-modal/flight_booking_utility';
const adultAndChildPassengers: Passenger[] = [
{
age: 30,
gender: 'FEMALE'
},
{
age: 12,
gender: 'FEMALE',
childAccount: true
}
];
describe('Trips: Existing user with no active bookings', () => {
beforeEach(() => {
LoginPage.createNewCompanyAndLoginWithUserByType({
providers: [Provider_Type.SABRE_FLIGHT],
users: [User_Type.PERSONAL_TRAVELER]
});
FlightInterceptApis.interceptFlightsApis();
HotelInterceptApis.interceptHotelApis();
});
it(
'C3048268: Creating a new trip opens the search field on the home page',
{ tags: ['@tier1'] },
() => {
TripsPage.visitPage();
TripsPage.expectNoResultsLinkToExist();
TripsPage.openNoResultsLink();
TripsPage.expectHomePage();
TripsPage.expectEmptyHomePage();
}
);
it('C365935: Merge/Rename trip', { tags: ['@tier3'] }, () => {
const tripName = 'First Trip';
const mergedName = 'Merged Trip';
FlightBookingUtility.bookOneWayFlight('Business');
TripsPage.renameTrip(tripName);
FlightBookingUtility.bookRoundTrip('Business');
TripsPage.visitPage();
TripsPage.mergeTrip(mergedName);
});
// it(
// 'C127211: Verify canceled trips are displayed as "canceled"',
// { tags: ['@tier2'] },
// () => {
// bookMultiCityTrip('Business');
// FlightUtility.runItineraryFlow();
// FlightItinerary.cancelFlight();
// TripsPage.visitPage();
// TripsPage.viewCancelledTrips();
// }
// );
// TODO: Test case needs to be reworked; cancelled trips are not consistently appearing in the cancelled trips tab
it('C127213: Verify trips can be searched/filtered', { tags: ['@tier2'] }, () => {
const tripType: TripTileType = 'Personal';
const adultAndTwoChildrenPassengers: Passenger[] = [
...adultAndChildPassengers,
{
age: 11,
gender: 'MALE',
childAccount: true
}
];
bookPersonalHotel(tripType, adultAndTwoChildrenPassengers);
HotelItinerary.waitToBeLoaded();
HotelItinerary.verifyHotelItineraryPage();
HotelItinerary.verifyTripTile(tripType);
FlightBookingUtility.bookOneWayFlight('Business');
TripsPage.visitPage();
TripsPage.verifyFilterByTripType();
TripsPage.verifyBrowseTripsBy();
TripsPage.searchByPassenger();
});
});