From 54df589b2006587798748fe1502af44b1f7fd831 Mon Sep 17 00:00:00 2001 From: Denis Date: Tue, 20 Dec 2016 09:53:33 +0200 Subject: Fix for Grid declarative format (read). (#8050) * Fix for Grid declarative format (read). Fixes vaadin/framework8-issues#576 --- server/src/main/java/com/vaadin/ui/Grid.java | 2 ++ .../tests/server/component/grid/GridDeclarativeTest.java | 16 +++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) (limited to 'server/src') diff --git a/server/src/main/java/com/vaadin/ui/Grid.java b/server/src/main/java/com/vaadin/ui/Grid.java index b7a3690f03..73d5c986f8 100644 --- a/server/src/main/java/com/vaadin/ui/Grid.java +++ b/server/src/main/java/com/vaadin/ui/Grid.java @@ -77,6 +77,7 @@ import com.vaadin.shared.ui.grid.GridState; import com.vaadin.shared.ui.grid.GridStaticCellType; import com.vaadin.shared.ui.grid.HeightMode; import com.vaadin.shared.ui.grid.SectionState; +import com.vaadin.ui.Grid.SelectionMode; import com.vaadin.ui.components.grid.ColumnReorderListener; import com.vaadin.ui.components.grid.ColumnResizeListener; import com.vaadin.ui.components.grid.ColumnVisibilityChangeListener; @@ -3050,6 +3051,7 @@ public class Grid extends AbstractListing implements HasComponents, List items = new ArrayList<>(); for (Element row : body.children()) { T item = deserializeDeclarativeRepresentation(row.attr("item")); + items.add(item); if (row.hasAttr("selected")) { getSelectionModel().select(item); } diff --git a/server/src/test/java/com/vaadin/tests/server/component/grid/GridDeclarativeTest.java b/server/src/test/java/com/vaadin/tests/server/component/grid/GridDeclarativeTest.java index 70e6539a48..d8b75b130e 100644 --- a/server/src/test/java/com/vaadin/tests/server/component/grid/GridDeclarativeTest.java +++ b/server/src/test/java/com/vaadin/tests/server/component/grid/GridDeclarativeTest.java @@ -28,6 +28,7 @@ import org.junit.Test; import com.vaadin.data.SelectionModel.Multi; import com.vaadin.data.SelectionModel.Single; import com.vaadin.data.provider.DataProvider; +import com.vaadin.data.provider.Query; import com.vaadin.shared.ui.grid.HeightMode; import com.vaadin.shared.ui.label.ContentMode; import com.vaadin.tests.data.bean.Person; @@ -264,7 +265,8 @@ public class GridDeclarativeTest extends AbstractListingDeclarativeTest { person2.getFirstName(), person2.getLastName(), getComponentTag()); - testRead(design, grid); + Grid readGrid = testRead(design, grid, true, true); + Assert.assertEquals(2, readGrid.getDataProvider().size(new Query<>())); testWrite(design, grid, true); } @@ -313,7 +315,8 @@ public class GridDeclarativeTest extends AbstractListingDeclarativeTest { person3.toString(), person3.getFirstName(), person3.getLastName(), getComponentTag()); - testRead(design, grid); + Grid readGrid = testRead(design, grid, true, true); + Assert.assertEquals(3, readGrid.getDataProvider().size(new Query<>())); testWrite(design, grid, true); } @@ -347,7 +350,8 @@ public class GridDeclarativeTest extends AbstractListingDeclarativeTest { person2.getFirstName(), person2.getLastName(), getComponentTag()); - testRead(design, grid); + Grid readGrid = testRead(design, grid, true, true); + Assert.assertEquals(2, readGrid.getDataProvider().size(new Query<>())); testWrite(design, grid, true); } @@ -382,7 +386,8 @@ public class GridDeclarativeTest extends AbstractListingDeclarativeTest { person2.toString(), person2.getFirstName(), person2.getLastName(), getComponentTag()); - testRead(design, grid); + Grid readGrid = testRead(design, grid, true, true); + Assert.assertEquals(2, readGrid.getDataProvider().size(new Query<>())); testWrite(design, grid, true); grid.setSelectionMode(SelectionMode.SINGLE); @@ -394,7 +399,8 @@ public class GridDeclarativeTest extends AbstractListingDeclarativeTest { person2.getFirstName(), person2.getLastName(), getComponentTag()); - testRead(design, grid); + readGrid = testRead(design, grid, true, true); + Assert.assertEquals(2, readGrid.getDataProvider().size(new Query<>())); testWrite(design, grid, true); } -- cgit v1.2.3