package org.fluentlenium.integration; import org.fluentlenium.core.domain.FluentWebElement; import org.fluentlenium.integration.localtest.IntegrationFluentTest; import org.junit.Test; import org.openqa.selenium.support.ui.Select; import static org.assertj.core.api.Assertions.assertThat; public class ActionOnSelectorWithBddTest extends IntegrationFluentTest { @Test public void checkFillAction() { goTo(DEFAULT_URL); assertThat(el("#name").value()).contains("John"); el("#name").fill().with("zzz"); assertThat(el("#name").value()).isEqualTo("zzz"); } @Test public void checkFillSelectAction() { goTo(DEFAULT_URL); Select select = new Select(el("#select").getElement()); $("#select").fillSelect().withValue("value-1"); // by value assertThat(select.getFirstSelectedOption().getText()).isEqualTo("value 1"); $("#select").fillSelect().withIndex(1); // by index assertThat(select.getFirstSelectedOption().getText()).isEqualTo("value 2"); $("#select").fillSelect().withText("value 3"); // by text assertThat(select.getFirstSelectedOption().getText()).isEqualTo("value 3"); } @Test public void checkFillSelectActionOnSelectElement() { goTo(DEFAULT_URL); FluentWebElement element = el("#select"); Select select = new Select(element.getElement()); element.fillSelect().withValue("value-1"); // by value assertThat(select.getFirstSelectedOption().getText()).isEqualTo("value 1"); element.fillSelect().withIndex(1); // by index assertThat(select.getFirstSelectedOption().getText()).isEqualTo("value 2"); element.fillSelect().withText("value 3"); // by text assertThat(select.getFirstSelectedOption().getText()).isEqualTo("value 3"); } @Test public void checkClearAction() { goTo(DEFAULT_URL); assertThat(el("#name").value()).contains("John"); el("#name").clear(); assertThat($("#name").first().value()).isEqualTo(""); } @Test public void checkClickAction() { goTo(DEFAULT_URL); assertThat(window().title()).contains("Selenium"); el("#linkToPage2").click(); assertThat(window().title()).isEqualTo("Page 2"); } }