package com.bddinaction.flyinghigh.junit; import com.bddinaction.flyinghigh.jbehave.flowsteps.TravellerFlowSteps; import com.bddinaction.flyinghigh.jbehave.model.FrequentFlyerMember; import com.bddinaction.flyinghigh.jbehave.pages.BookingPage; import com.google.common.collect.ImmutableList; import net.thucydides.core.annotations.Issue; import net.thucydides.core.annotations.Managed; import net.thucydides.core.annotations.ManagedPages; import net.thucydides.core.annotations.Steps; import net.thucydides.core.pages.Pages; import net.thucydides.junit.runners.ThucydidesRunner; import org.junit.Assume; import org.junit.BeforeClass; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.openqa.selenium.WebDriver; import java.util.List; import static org.fest.assertions.api.Assertions.assertThat; @RunWith(ThucydidesRunner.class) @Ignore //@Story(Application.ViewingFlights.displaying_flight_details.class) @Issue("FH-18") public class WhenDisplayingMoreFlightDetails { @Managed WebDriver driver; @ManagedPages(defaultUrl = "http://localhost:8080/#/welcome") public Pages pages; @Steps private TravellerFlowSteps registeredMember; @Test public void display_flight_details_to_featured_destinations() { registeredMember.enterEmailAndPasswordFor(FrequentFlyerMember.Jane); registeredMember.shouldSeeFeaturedDestinations(3); } @BeforeClass public static void setup() { assertThat(false).isFalse(); } @Test public void display_flight_durations() { Assume.assumeTrue("Favorite destinations service is ready", false); } @Test public void display_flight_for_all_available_flights() { registeredMember.navigateToFlightBookings(); registeredMember.searchForFlights("return", "Sydney", "London", "Business"); } public BookingPage bookingPage; @Test public void display_flight_details_with_lookahead() { registeredMember.navigateToFlightBookings(); registeredMember.searchForFlightsFromCitiesStartingWith("Se"); List<String> proposedCities = registeredMember.getProposedDepartureCities(); assertThat(proposedCities).containsAll(ImmutableList.of("Seattle","Seoul")) .hasSize(2); } }