diff options
author | Anna Koskinen <Ansku@users.noreply.github.com> | 2021-05-20 11:18:16 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-20 11:18:16 +0300 |
commit | 49b2ec6b506b441226200641916f4b9220a8ced8 (patch) | |
tree | 0741caa17f24b968c80cc21ffccce512d763212f /uitest/src/test | |
parent | 786627a89595b0fed8e7eccfc5c0ef25ac9b2218 (diff) | |
download | vaadin-framework-49b2ec6b506b441226200641916f4b9220a8ced8.tar.gz vaadin-framework-49b2ec6b506b441226200641916f4b9220a8ced8.zip |
Trigger repositioning after full refresh of current details. (#12312)
Fixes #12310
Diffstat (limited to 'uitest/src/test')
-rw-r--r-- | uitest/src/test/java/com/vaadin/tests/components/grid/GridDetailsUpdateItemsTest.java | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/uitest/src/test/java/com/vaadin/tests/components/grid/GridDetailsUpdateItemsTest.java b/uitest/src/test/java/com/vaadin/tests/components/grid/GridDetailsUpdateItemsTest.java index 22c7da0c02..47cdc7ffff 100644 --- a/uitest/src/test/java/com/vaadin/tests/components/grid/GridDetailsUpdateItemsTest.java +++ b/uitest/src/test/java/com/vaadin/tests/components/grid/GridDetailsUpdateItemsTest.java @@ -2,9 +2,11 @@ package com.vaadin.tests.components.grid; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.number.IsCloseTo.closeTo; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotEquals; import org.junit.Test; +import org.openqa.selenium.By; import com.vaadin.testbench.TestBenchElement; import com.vaadin.testbench.elements.ButtonElement; @@ -18,7 +20,8 @@ public class GridDetailsUpdateItemsTest extends MultiBrowserTest { public void testDetailsUpdateWithItems() { openTestURL(); GridElement grid = $(GridElement.class).first(); - ButtonElement button = $(ButtonElement.class).first(); + ButtonElement button = $(ButtonElement.class) + .caption("Change with details").first(); String details0 = grid.getDetails(0).getText(); @@ -41,6 +44,28 @@ public class GridDetailsUpdateItemsTest extends MultiBrowserTest { assertDirectlyAbove(cell1_0, detailCell1); } + @Test + public void testRemovingDetailsWithItemUpdateRepositionsRowsCorrectly() { + openTestURL(); + GridElement grid = $(GridElement.class).first(); + ButtonElement button = $(ButtonElement.class) + .caption("Change without details").first(); + + assertFalse("Details not found when there should be some.", + grid.findElements(By.className("v-grid-spacer")).isEmpty()); + + // change the contents + button.click(); + + waitForElementNotPresent(By.className("v-grid-spacer")); + + GridCellElement cell0_0 = grid.getCell(0, 0); + GridCellElement cell1_0 = grid.getCell(1, 0); + + // ensure positioning is correct + assertDirectlyAbove(cell0_0, cell1_0); + } + private void assertDirectlyAbove(TestBenchElement above, TestBenchElement below) { int aboveBottom = above.getLocation().getY() |