diff options
author | Henrik Paul <henrik@vaadin.com> | 2015-03-09 14:31:37 +0200 |
---|---|---|
committer | Henrik Paul <henrik@vaadin.com> | 2015-03-17 12:59:05 +0200 |
commit | 84c143dd76ed1d27d03c0d695e7218b477d008fe (patch) | |
tree | 1070f41763d46572af72eb230f18c9d3ce610b48 /uitest | |
parent | f61cf666f3d28ac57b6c3cd5de30d9b54814d683 (diff) | |
download | vaadin-framework-84c143dd76ed1d27d03c0d695e7218b477d008fe.tar.gz vaadin-framework-84c143dd76ed1d27d03c0d695e7218b477d008fe.zip |
Server side Grid can open details on the client side (#16644)
Change-Id: Ibff5a83b3a09c7c530926dadae9138ba3823f27a
Diffstat (limited to 'uitest')
-rw-r--r-- | uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeatures.java | 14 | ||||
-rw-r--r-- | uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridDetailsServerTest.java | 76 |
2 files changed, 90 insertions, 0 deletions
diff --git a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeatures.java b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeatures.java index e5a46894b8..f0c4b3d9c0 100644 --- a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeatures.java +++ b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/GridBasicFeatures.java @@ -248,6 +248,8 @@ public class GridBasicFeatures extends AbstractComponentTest<Grid> { addFilterActions(); + createDetailsActions(); + this.grid = grid; return grid; } @@ -1051,6 +1053,18 @@ public class GridBasicFeatures extends AbstractComponentTest<Grid> { }, null); } + private void createDetailsActions() { + createBooleanAction("firstItemId", "Details", false, + new Command<Grid, Boolean>() { + @Override + @SuppressWarnings("boxing") + public void execute(Grid g, Boolean visible, Object data) { + g.setDetailsVisible(g.getContainerDataSource() + .firstItemId(), visible); + } + }); + } + @Override protected Integer getTicketNumber() { return 12829; diff --git a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridDetailsServerTest.java b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridDetailsServerTest.java new file mode 100644 index 0000000000..01d2ba55eb --- /dev/null +++ b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/server/GridDetailsServerTest.java @@ -0,0 +1,76 @@ +/* + * Copyright 2000-2014 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.vaadin.tests.components.grid.basicfeatures.server; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.fail; + +import org.junit.Before; +import org.junit.Test; +import org.openqa.selenium.NoSuchElementException; + +import com.vaadin.testbench.annotations.RunLocally; +import com.vaadin.testbench.parallel.Browser; +import com.vaadin.tests.components.grid.basicfeatures.GridBasicFeaturesTest; + +@RunLocally(Browser.PHANTOMJS) +public class GridDetailsServerTest extends GridBasicFeaturesTest { + private static final String[] FIRST_ITEM_DETAILS = new String[] { + "Component", "Details", "firstItemId" }; + + @Before + public void setUp() { + openTestURL(); + } + + @Test + public void openVisibleDetails() { + try { + getGridElement().getDetails(0); + fail("Expected NoSuchElementException"); + } catch (NoSuchElementException ignore) { + // expected + } + selectMenuPath(FIRST_ITEM_DETAILS); + assertNotNull("details should've opened", getGridElement() + .getDetails(0)); + } + + @Test(expected = NoSuchElementException.class) + public void closeVisibleDetails() { + selectMenuPath(FIRST_ITEM_DETAILS); + selectMenuPath(FIRST_ITEM_DETAILS); + getGridElement().getDetails(0); + } + + @Test + public void openDetailsOutsideOfActiveRange() { + getGridElement().scroll(10000); + selectMenuPath(FIRST_ITEM_DETAILS); + getGridElement().scroll(0); + assertNotNull("details should've been opened", getGridElement() + .getDetails(0)); + } + + @Test(expected = NoSuchElementException.class) + public void closeDetailsOutsideOfActiveRange() { + selectMenuPath(FIRST_ITEM_DETAILS); + getGridElement().scroll(10000); + selectMenuPath(FIRST_ITEM_DETAILS); + getGridElement().scroll(0); + getGridElement().getDetails(0); + } +} |