|
|
@@ -1,19 +1,21 @@ |
|
|
|
package com.vaadin.tests.components.table; |
|
|
|
|
|
|
|
import com.vaadin.testbench.By; |
|
|
|
import com.vaadin.testbench.elements.ButtonElement; |
|
|
|
import com.vaadin.testbench.elements.TableElement; |
|
|
|
import com.vaadin.tests.tb3.MultiBrowserTest; |
|
|
|
import static org.hamcrest.CoreMatchers.is; |
|
|
|
import static org.hamcrest.MatcherAssert.assertThat; |
|
|
|
|
|
|
|
import java.io.IOException; |
|
|
|
|
|
|
|
import junit.framework.Assert; |
|
|
|
|
|
|
|
import org.junit.Rule; |
|
|
|
import org.junit.Test; |
|
|
|
import org.junit.rules.ExpectedException; |
|
|
|
import org.openqa.selenium.NoSuchElementException; |
|
|
|
|
|
|
|
import java.io.IOException; |
|
|
|
|
|
|
|
import static org.hamcrest.CoreMatchers.is; |
|
|
|
import static org.hamcrest.MatcherAssert.assertThat; |
|
|
|
import com.vaadin.testbench.By; |
|
|
|
import com.vaadin.testbench.elements.ButtonElement; |
|
|
|
import com.vaadin.testbench.elements.TableElement; |
|
|
|
import com.vaadin.tests.tb3.MultiBrowserTest; |
|
|
|
|
|
|
|
public class ContainerSizeChangeTest extends MultiBrowserTest { |
|
|
|
|
|
|
@@ -21,29 +23,35 @@ public class ContainerSizeChangeTest extends MultiBrowserTest { |
|
|
|
public ExpectedException thrown = ExpectedException.none(); |
|
|
|
|
|
|
|
@Test |
|
|
|
public void tableShouldLoadCorrectItems() throws IOException, InterruptedException { |
|
|
|
public void tableShouldLoadCorrectItems() throws IOException, |
|
|
|
InterruptedException { |
|
|
|
openTestURL(); |
|
|
|
|
|
|
|
ButtonElement decreaseSize = $(ButtonElement.class).caption("Decrease size").first(); |
|
|
|
decreaseSize.click(); //decreasing container size from 50 to 40 |
|
|
|
decreaseSize.click(); //decreasing container size from 40 to 30 |
|
|
|
ButtonElement decreaseSize = $(ButtonElement.class).caption( |
|
|
|
"Decrease size").first(); |
|
|
|
decreaseSize.click(); // decreasing container size from 50 to 40 |
|
|
|
decreaseSize.click(); // decreasing container size from 40 to 30 |
|
|
|
|
|
|
|
TableElement table = $(TableElement.class).first(); |
|
|
|
//TableElement scroll not working properly, so we need to do this. http://dev.vaadin.com/ticket/13826 |
|
|
|
testBenchElement(table.findElement(By.className("v-scrollable"))).scroll(1000); |
|
|
|
|
|
|
|
//waitforvaadin not worky currently for table scroll, so we need to use thread sleep :( |
|
|
|
Thread.sleep(1000); |
|
|
|
// waitforvaadin not worky currently for table scroll, so we need to use |
|
|
|
// thread sleep :( |
|
|
|
Thread.sleep(1500); |
|
|
|
|
|
|
|
assertThatRowExists(table, 29); |
|
|
|
assertRowDoesNotExist(table, 30); |
|
|
|
} |
|
|
|
|
|
|
|
private void assertThatRowExists(TableElement table, int rowIndex) { |
|
|
|
assertThat(table.getCell(rowIndex, 0).getText(), is(String.format("a %s", rowIndex))); |
|
|
|
assertThat(table.getCell(rowIndex, 0).getText(), |
|
|
|
is(String.format("a %s", rowIndex))); |
|
|
|
} |
|
|
|
|
|
|
|
private void assertRowDoesNotExist(TableElement table, int rowIndex) { |
|
|
|
//This is a really crappy way to workaround JUnit's limitation to provide a proper assert.throws method... |
|
|
|
// This is a really crappy way to workaround JUnit's limitation to |
|
|
|
// provide a proper assert.throws method... |
|
|
|
thrown.expect(NoSuchElementException.class); |
|
|
|
table.getCell(rowIndex, 0); |
|
|
|
|