public void ShouldBookRandomSupplier_ForDestination_Majorca()
        {
            //Select the uk location
            HomePage.TopPanel.ClickLocation(Location.UnitedKingdom);

            //Enter Hotel only search data
            HomePage.SearchFor().HotelOnly().ToDestination("Majorca").FromCheckIn(Calendar.PickRandomCheckInDate())
            .ToCheckOut(Calendar.PickRandomCheckOutDate()).SearchAndCapture();

            //Check if result page is displayed within 60 sec
            Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec");

            //Check if any hote results are displayed for the search
            Assert.That(HotelResultsPage.AreResultsDisplayed(), Is.True, "No Results are available for the hotel search");

            //Select random hotel from the first result page
            HotelResultsPage.ClickHotelNumber(HotelResultsPageRnd.PickRandomHotel());

            //Check HotelDetailPage is displayed
            Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Detail page is not displayed");

            //Select the first available room from the list
            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture();

            //Check if the extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed");

            //Click Booknow button
            ExtrasPage.BookHotel().ContinueAndCapture();

            //Check Payment Page is displayed
            Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed");
        }
Пример #2
0
        public void HotelDetailsPageOnlyOneRoomShouldReturnValidData()
        {
            string destination = "London, United Kingdom";
            string checkIn     = DateTime.Today.AddMonths(5).ToShortDateString();
            string checkOut    = DateTime.Today.AddMonths(5).AddDays(7).ToShortDateString();
            int    adults      = 4;
            int    children    = 2;

            int[] childrenAges = new int[] { 5, 7 };

            HomePage.SearchFor().HotelOnly().ToHotelName(destination).FromCheckIn(checkIn).ToCheckOut(checkOut)
            .ForAdults(adults).WithChildren(children).OfAges(childrenAges).SearchAndCapture();

            //check if result page is displayed
            Assert.AreEqual(true, HotelResultsPage.IsDisplayed(), "Hotel Search Result Page isn't displayed");

            int hotelNumber = 1;

            HotelResultsPage.ClickHotelNumberAndCapture(hotelNumber);

            //check if result page is displayed
            Assert.AreEqual(true, HotelDetailPage.IsDisplayed(), "Hotel Details Page isn't displayed");

            int availableRoom = 2;

            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(availableRoom).ContinueAndCapture();

            Assert.IsTrue(HotelDetailPage.Data.LoadingTime.TotalMilliseconds > 0);
            Assert.AreEqual(1, HotelDetailPage.Data.Rooms.Length);
            Assert.AreEqual(availableRoom, HotelDetailPage.Data.Rooms[0].AvailableRoom);
        }
Пример #3
0
        public void ShouldBook_1st_MostPopularFlightAndHotel_Benidorm()
        {
            //Select the uk location
            HomePage.TopPanel.ClickLocation(Location.UnitedKingdom);

            //Enter Hotel only search data
            HomePage.SearchFor().FlightAndHotel().ToDestination("Benidorm, Spain").FromCheckIn(Calendar.PickRandomCheckInDate())
            .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport(HomePageRnd.PickRandomFlightDepartureAirport()).SearchAndCapture();

            //Check if result page is displayed within 60 sec
            Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec");

            //Check if any hote results are displayed for the search
            Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search.");

            //Select Room 1 of a random hotel from the first result page
            FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).ContinueAndCapture();

            //Check if result page is displayed within 60 sec
            Assert.That(HotelResultsPage.IsDisplayed(), "Hotel Search Result Page isn't displayed within 60 sec");

            //Check if any hote results are displayed for the search
            Assert.That(HotelResultsPage.AreResultsDisplayed(), "No Results are available for the hotel search");

            //Select random hotel from the first result page
            HotelResultsPage.ClickHotelNumber(HotelResultsPageRnd.PickRandomHotel());

            //Check HotelDetailPage is displayed
            Assert.That(HotelDetailPage.IsDisplayed(), "Hotel Detail page is not displayed");

            //Select the first available room from the list
            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture();

            //Check if the extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed");

            //check if Airport Transfer is displayed
            Assert.That(ExtrasPage.IsExtraDisplayed(Extras.Travelinsurance), "TravelInsurrance is not Visible on extra page");

            //Expand Car Hire
            ExtrasPage.ExpandExtraLink(Extras.Travelinsurance);

            //Confirm if any results are available
            Assert.That(ExtrasPage.AreResultsDisplayed(Extras.Travelinsurance), "TravelInsurrance results not available");

            //Pick a random option from travel insurrance
            ExtrasPage.PickRandomTravelInsurance();

            //Add Airporttranser and click Booknow button
            ExtrasPage.BookFlightAndHotel().ContinueAndCapture();

            //Check Payment Page is displayed
            Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed");
        }
Пример #4
0
        public void ShouldBook_2nd_MostPopularFlightAndHotel_Tenerife()
        {
            //Select the uk location
            HomePage.TopPanel.ClickLocation(Location.UnitedKingdom);

            //Enter Hotel only search data
            HomePage.SearchFor().FlightAndHotel().ToDestination("Tenerife, Canaries").FromCheckIn(Calendar.PickRandomCheckInDate())
            .ToCheckOut(Calendar.PickRandomCheckOutDate()).FromDepartureAirport(HomePageRnd.PickRandomFlightDepartureAirport()).SearchAndCapture();

            //Check if result page is displayed within 60 sec
            Assert.That(FlightResultsPage.IsDisplayed(), "Flight Search Result Page isn't displayed within 60 sec");

            //Check if any hote results are displayed for the search
            Assert.That(FlightResultsPage.AreResultsDisplayed(), "No Results are available for the flight search.");

            //Select Room 1 of a random hotel from the first result page
            FlightResultsPage.SelectFlight().ByFlightNumber(FlightResultsPageRnd.PickRandomFlight()).ContinueAndCapture();

            //Check if result page is displayed within 60 sec
            Assert.That(HotelResultsPage.IsDisplayed(), "Hotel Search Result Page isn't displayed within 60 sec");

            //Check if any hote results are displayed for the search
            Assert.That(HotelResultsPage.AreResultsDisplayed(), "No Results are available for the hotel search");

            //Select random hotel from the first result page
            HotelResultsPage.ClickHotelNumber(HotelResultsPageRnd.PickRandomHotel());

            //Check HotelDetailPage is displayed
            Assert.That(HotelDetailPage.IsDisplayed(), "Hotel Detail page is not displayed");

            //Select the first available room from the list
            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture();

            //Check if the extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed(), "Extras page is not displayed");

            //Click Booknow button
            ExtrasPage.BookFlightAndHotel().ContinueAndCapture();

            //Check Payment Page is displayed
            Assert.That(PaymentPage.IsDisplayed(), "Payment page is not displayed");
        }
Пример #5
0
        public void ShouldSearch_MostPopularRoutes_ForAllMultiCom_Suppliers(HotelExtrasTestScript script)
        {
            //check if homepage is displayed
            Assert.That(HomePage.IsDisplayed(), Is.True, "Homepage isn't displayed");

            //Select united kingdom as the user location
            HomePage.TopPanel.ClickLocation(Location.UnitedKingdom);

            //Enter Hotel only search data
            HomePage.SearchFor().HotelOnly().ToHotelName(script.HotelName).FromCheckIn(Calendar.PickRandomCheckInDate())
            .ToCheckOut(Calendar.PickRandomCheckOutDate()).Search();

            //Check HotelDetailPage is displayed
            Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Detail page is not displayed");

            //Select the first available room from the list
            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture();

            //check extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed, Is.True, "Extra page is not been displayed");

            //check if carhire is displayed
            Assert.That(ExtrasPage.IsExtraDisplayed(Extras.CarHire), Is.True, "Car Hire is not displayed on extra page");

            //check if Airport Transfer is displayed
            //Assert.That(ExtrasPage.IsVisible(Extras.Airport_Transfer), Is.True, "Airport Transport is not displayed on extra page");

            //Expand Car Hire
            ExtrasPage.ExpandExtraLink(Extras.CarHire);

            //Confirm if any results are available
            Assert.That(ExtrasPage.AreResultsDisplayed(Extras.CarHire), Is.True, "Car Hire results not available by default");

            //Confirm if any results are available
            //Assert.That(ExtrasPage.CheckResultsAvailabilityFor(Extras.Airport_Transfer), Is.True, "Airport Transfer results not available");

            //Assert.That(ExtrasPage.IsVisible(Extras.Airport_Transfer), Is.True, "Airport Transfer is not Visible on extra page");

            //Assert.That(ExtrasPage.IsVisible(Extras.Hold_luggage), Is.True, "Airport Transfer is not Visible on extra page");

            Assert.Pass(script.TestName + " Sucessful");
        }
Пример #6
0
        public void ShouldBook_2nd_MostPopularHotel_Benidorm()
        {
            //Enter Hotel only search data
            HomePage.SearchFor().HotelOnly().ToHotelName("Sol Pelicanos Ocas,Sol Pelicanos Ocas").FromCheckIn(Calendar.PickRandomCheckInDate())
            .ToCheckOut(Calendar.PickRandomCheckOutDate()).AddAnotherRoom().Search();

            //Check if result page is displayed within 60 sec
            //Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Search Result Page isn't displayed within 60 sec");

            //Check if any hote results are displayed for the search
            //Assert.That(HotelDetailPage., Is.True, "No Results are available for the hotel search");

            //Select first room option of the first hotel displayed on the very first result page
            HotelDetailPage.SelectRoom().ForRoomNumber(1).WithAvailableRoom(2).ForRoomNumber(2).WithAvailableRoom(1).Continue();

            //Check if the extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras page is not displayed");

            //Click Booknow button
            ExtrasPage.BookHotel().Continue();

            //Check Payment Page is displayed
            Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page is not displayed");
        }
        public ISelectHotelDetailsByFirstSupplier ByFirstSupplier(string supplier)
        {
            AvailableHotelRoomInfo room = HotelDetailPage.FindRoomForFirstSupplier(supplier);

            return(new SelectHotelDetails(room));
        }
Пример #8
0
        public void ShouldMakeHotelOnlyBooking()
        {
            //check if homepage is displayed
            Assert.That(HomePage.IsDisplayed(), Is.True, "Homepage isn't displayed");

            //Select united kingdom as the user location
            HomePage.TopPanel.ClickLocation(Location.UnitedKingdom);

            //Enter Hotel only search data
            HomePage.SearchFor().HotelOnly().ToHotelName("Playa Real Resort").FromCheckIn("24/09/2014")
            .ToCheckOut("30/09/2014").Search();

            //Check HotelDetailPage is displayed
            Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Detail page is not displayed");

            //Select the first available room from the list
            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture();

            //check extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed, Is.True, "Extra page is not been displayed");

            //check if carhire is displayed
            Assert.That(ExtrasPage.IsExtraDisplayed(Extras.CarHire), Is.True, "Car Hire is not Visible on extra page");

            //Expand Car Hire
            ExtrasPage.ExpandExtraLink(Extras.CarHire);

            //Confirm if any results are available
            Assert.That(ExtrasPage.AreResultsDisplayed(Extras.CarHire), Is.True, "Car Hire results not available by default");

            //check if homepage is displayed
            Assert.That(HomePage.IsDisplayed(), Is.True, "Homepage isn't displayed");

            //Enter Hotel only search data
            HomePage.SearchFor().HotelOnly().ToHotelName("Africa El Mouradi Hotel").FromCheckIn(Calendar.PickRandomCheckInDate())
            .ToCheckOut(Calendar.PickRandomCheckOutDate())
            /*.AddAnotherRoom().ForAdults(2).WithChildren(1).OfAges(2)*/.Search();

            //HotelResultsPage.ClickHotelNumber(1);
            Assert.That(HotelDetailPage.IsDisplayed(), Is.True, "Hotel Result page is not displayed");

            //
            HotelDetailPage.SelectRoom().OnlyOneRoomWithAvailableRoom(1).ContinueAndCapture();

            //extra page is displayed
            Assert.That(ExtrasPage.IsDisplayed, Is.True, "Hotel Summary page is not been displayed");


            //
            Assert.That(ExtrasPage.IsExtraDisplayed(Extras.CarHire), Is.True, "Car Hire is not Visible on extra page");

            Assert.That(ExtrasPage.IsExtraDisplayed(Extras.AirportTransfer), Is.True, "Airport Transfer is not Visible on extra page");

            Assert.That(ExtrasPage.IsExtraDisplayed(Extras.HoldLuggage), Is.True, "Airport Transfer is not Visible on extra page");

            //FlightResultsPage.FindFlightForFirstSupplier()
            //HotelResultsPage.ClickHotelNumber(HotelResultsPage.FindHotel("TRH Jardin Del Mar, Santa Ponsa"));

            //HotelResultsPage.SelectRoom().ByHotelNumber(1).ForRoomNumber(1).WithAvailableRoom(1).Continue();


            //HotelDetailPage.SelectRoom().WithAvailableRoom(2).ContinueAndCapture();


            //HotelDetailPage.SelectRoom().ByFirstSupplier("JT (Y)").ContinueAndCapture();

            //HotelDetailPage.SelectRoom().WithAvailableRoom(4).Continue();


            //HotelDetailPage.SelectRoom().WithAvailableRoom(1).Continue();

            //HotelDetailPage.SelectRoom().ForRoomNumber(1).WithAvailableRoom(1).ForRoomNumber(2).WithAvailableRoom(2).Continue();

            //HotelDetailPage.SelectRoom().ByFirstSupplier("JT (Y)").Continue();
        }
        public void ShouldBookRandomSingleRoom_ForDestination_Benidorm()
        {
            //HomePage.ClickFlightOnly();
            //HomePage.TypeFlightDestination("Benidorm");
            //HomePage.SelectCheckIn("01/06/2014");
            //HomePage.SelectCheckOut("08/06/2014");
            //HomePage.SelectAirport("London (All Airports), London, United Kingdom (LON)");
            //HomePage.SelectAdults(2);
            //HomePage.SelectChildren(2, new int[] {2,3});
            //HomePage.ClickSearch();

            //HomePage.SearchFor().FlightOnly().ToDestination("Benidorm").FromCheckIn("01/09/2014")
            //    .ToCheckOut("08/09/2014").FromDepartureAirport("London (All Airports), London, United Kingdom (LON)")
            //    .ForAdults(2).WithChildren(2).OfAges(2, 3).Search();

            HomePage.SearchFor().HotelOnly().ToDestination("Benidorm").FromCheckIn("01/09/2014")
            .ToCheckOut("15/09/2014").ForAdults(2).Search();

            Assert.That(HotelResultsPage.IsDisplayed(), Is.True, "Hotel result page is not displayed");

            HotelResultsPage.ClickHotelNumber(1);

            HotelDetailPage.ClickAvaliableRoom(1);

            Assert.That(ExtrasPage.IsDisplayed(), Is.True, "Extras Page not showing");

            //TODO
            ExtrasPage.Save(Information.Hotel);

            Assert.That(HotelResultsPage.Data.HotelName == ExtrasPage.Data.HotelName, Is.True, "Differing hotel names from SR to Extras");

            //Assert.That(HotelResultsPage.Data.Rooms[0].RoomPrice+==ExtrasPage.Data.

            ExtrasPage.BookHotel().Continue();

            Assert.That(PaymentPage.IsDisplayed(), Is.True, "Payment page not displaying");

            PaymentPage.Save(Information.Hotel);

            Assert.That(ExtrasPage.Data.HotelName == PaymentPage.Data.HotelName, Is.True, "Hotel name differs from Extras to Payment");

            PaymentPage.MakeAHotelBooking()
            .ForGuestDetailsNumber(1).OfRoomNo(1).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test")
            .ForGuestDetailsNumber(2).OfRoomNo(1).WithTitle(Title.Mr).WithFirstName("Test").WithLastName("Test")
            .ForContactDetails().TypeFirstName("Test").WithLastName("Test").WithEmail("*****@*****.**").WithPhoneNumber("08719110030")
            .ForPaymentDetails()
            .WithPaymentType(Card.Mastercard)
            .WithCardHolderName("Test Test")
            .WithCardNo("5569510003306537")
            .WithExpiryDate("03/15")
            .WithSecurityCode("123")
            .WithPostCode("S11 8NX")
            .ForStaffDetails().WithReference("test").WithCustomerPhone("1")
            .Confirm();

            //Assert.That(PaymentPage.Check3DSPage(), Is.True, "3DS page not displaying");
            Assert.IsTrue(ConfirmationPage.IsDisplayed(), "Confirmation page isn't displayed within 60 sec");

            Assert.IsTrue(ConfirmationPage.PNRNoIsDisplayed(), "PNR Number is empty");

            //Assert.That(PaymentPage.ValidateConfirmationMsg(), Is.True, "Confirmation page not showing");
        }