diff options
author | Teemu Suo-Anttila <tsuoanttila@users.noreply.github.com> | 2017-03-30 13:36:09 +0300 |
---|---|---|
committer | Henri Sara <henri.sara@gmail.com> | 2017-03-30 13:36:09 +0300 |
commit | 7ff30d7c081a6da03fff57b5d1f44826fa3c06a9 (patch) | |
tree | 40b91e576594d0415461404bc7fdad1eab9d1c4b /uitest | |
parent | 400b4eedcbb8cc3e1bd6e4861a0620978509c932 (diff) | |
download | vaadin-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.java | 4 | ||||
-rw-r--r-- | uitest/src/test/java/com/vaadin/tests/components/grid/GridRendererSwitchTest.java | 55 |
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")); + } } |