package com.vaadin.tests.components.table; import static org.junit.Assert.assertEquals; import java.io.IOException; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.openqa.selenium.interactions.Actions; import com.vaadin.testbench.elements.TableElement; import com.vaadin.testbench.elements.TableHeaderElement; import com.vaadin.tests.tb3.MultiBrowserTest; public class ColumnReorderingWithManyColumnsTest extends MultiBrowserTest { @Test public void testReordering() throws IOException { openTestURL(); TableElement table = $(TableElement.class).first(); TableHeaderElement sourceCell = table.getHeaderCell(0); TableHeaderElement targetCell = table.getHeaderCell(10); drag(sourceCell, targetCell); WebElement markedElement = table .findElement(By.className("v-table-focus-slot-right")); String markedColumnName = markedElement.findElement(By.xpath("..")) .getText(); assertEquals("col-9", markedColumnName.toLowerCase()); } private void drag(WebElement source, WebElement target) { Actions actions = new Actions(getDriver()); actions.moveToElement(source, 10, 10); actions.clickAndHold(source); actions.moveToElement(target, 10, 10); actions.perform(); } }