aboutsummaryrefslogtreecommitdiffstats
path: root/uitest
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <tsuoanttila@users.noreply.github.com>2017-03-30 13:36:09 +0300
committerHenri Sara <henri.sara@gmail.com>2017-03-30 13:36:09 +0300
commit7ff30d7c081a6da03fff57b5d1f44826fa3c06a9 (patch)
tree40b91e576594d0415461404bc7fdad1eab9d1c4b /uitest
parent400b4eedcbb8cc3e1bd6e4861a0620978509c932 (diff)
downloadvaadin-framework-7ff30d7c081a6da03fff57b5d1f44826fa3c06a9.tar.gz
vaadin-framework-7ff30d7c081a6da03fff57b5d1f44826fa3c06a9.zip
Fix column indexing when setting a renderer (#8976)
Fixes #8943
Diffstat (limited to 'uitest')
-rw-r--r--uitest/src/main/java/com/vaadin/tests/components/grid/GridRendererSwitch.java4
-rw-r--r--uitest/src/test/java/com/vaadin/tests/components/grid/GridRendererSwitchTest.java55
2 files changed, 57 insertions, 2 deletions
diff --git a/uitest/src/main/java/com/vaadin/tests/components/grid/GridRendererSwitch.java b/uitest/src/main/java/com/vaadin/tests/components/grid/GridRendererSwitch.java
index b73383d22b..1b69479ffe 100644
--- a/uitest/src/main/java/com/vaadin/tests/components/grid/GridRendererSwitch.java
+++ b/uitest/src/main/java/com/vaadin/tests/components/grid/GridRendererSwitch.java
@@ -22,9 +22,9 @@ public class GridRendererSwitch extends AbstractTestUI {
protected void setup(VaadinRequest request) {
Grid<Integer> grid = new Grid<>();
Column<Integer, String> column = grid.addColumn(i -> "Foo " + i)
- .setCaption("Foo");
+ .setCaption("Foo").setHidable(true);
Column<Integer, String> secondColumn = grid.addColumn(i -> "Bar " + i)
- .setCaption("Bar");
+ .setCaption("Bar").setHidable(true);
addComponent(grid);
addComponent(new Button("Switch", e -> {
diff --git a/uitest/src/test/java/com/vaadin/tests/components/grid/GridRendererSwitchTest.java b/uitest/src/test/java/com/vaadin/tests/components/grid/GridRendererSwitchTest.java
index 1fd775b58a..a2ac8e1043 100644
--- a/uitest/src/test/java/com/vaadin/tests/components/grid/GridRendererSwitchTest.java
+++ b/uitest/src/test/java/com/vaadin/tests/components/grid/GridRendererSwitchTest.java
@@ -97,4 +97,59 @@ public class GridRendererSwitchTest extends SingleBrowserTest {
assertNoErrorNotifications();
}
+ @Test
+ public void testReorderColumnsHideAndSwitch() {
+ setDebug(true);
+ openTestURL();
+
+ GridElement grid = $(GridElement.class).first();
+ Assert.assertEquals("Unexpected content in first grid cell", "Foo 0",
+ grid.getCell(0, 0).getAttribute("innerHTML"));
+ ButtonElement reverse = $(ButtonElement.class).caption("Reverse")
+ .first();
+
+ reverse.click();
+ Assert.assertEquals(
+ "Unexpected content in first grid cell after reorder", "Bar 0",
+ grid.getCell(0, 0).getAttribute("innerHTML"));
+
+ grid.toggleColumnHidden("Bar");
+
+ ButtonElement button = $(ButtonElement.class).caption("Switch").first();
+ button.click();
+
+ assertNoErrorNotifications();
+
+ Assert.assertFalse(
+ "No button in cell after reversing order and changing renderer",
+ grid.getCell(0, 0).findElements(By.tagName("button"))
+ .isEmpty());
+ grid.getCell(0, 0).findElement(By.tagName("button")).click();
+ Assert.assertTrue("Notification not shown",
+ isElementPresent(NotificationElement.class));
+ }
+
+ @Test
+ public void testSwitchRendererOfHiddenColumn() {
+ setDebug(true);
+ openTestURL();
+
+ GridElement grid = $(GridElement.class).first();
+ Assert.assertEquals("Unexpected content in first grid cell", "Foo 0",
+ grid.getCell(0, 0).getAttribute("innerHTML"));
+
+ grid.toggleColumnHidden("Foo");
+
+ Assert.assertEquals("Unexpected content in first grid cell after hide",
+ "Bar 0", grid.getCell(0, 0).getAttribute("innerHTML"));
+
+ ButtonElement button = $(ButtonElement.class).caption("Switch").first();
+ button.click();
+
+ assertNoErrorNotifications();
+
+ Assert.assertEquals(
+ "Unexpected content in first grid cell after hidden renderer change",
+ "Bar 0", grid.getCell(0, 0).getAttribute("innerHTML"));
+ }
}