package com.vaadin.tests.components.calendar; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import java.util.List; import org.junit.Test; import org.openqa.selenium.WebElement; import com.vaadin.testbench.By; import com.vaadin.tests.tb3.MultiBrowserTest; public class CalendarWeekSelectionTest extends MultiBrowserTest { @Test public void correctYearIsSelected() { openTestURL(); clickOnWeek("1"); assertThat(getFirstDayOfTheYear().getText(), is("Wednesday 1/1/14")); } private WebElement getFirstDayOfTheYear() { WebElement header = findElement(By.className("v-calendar-header-week")); List<WebElement> headerElements = header.findElements(By.tagName("td")); // Wednesday is the first day of 2014. return headerElements.get(4); } private void clickOnWeek(String week) { for (WebElement e : findElements( By.className("v-calendar-week-number"))) { if (e.getText().equals(week)) { e.click(); break; } } } }