summaryrefslogtreecommitdiffstats
path: root/uitest/src
diff options
context:
space:
mode:
authorMarkus Koivisto <markus@vaadin.com>2015-04-08 14:54:53 +0300
committerMarkus Koivisto <markus@vaadin.com>2015-04-08 14:54:53 +0300
commitdb5fc67b3833e0424f5773c68dd98291282ebad1 (patch)
treefe2cc86ecefdf0fc9fc754e5cc14041df4fd8f2f /uitest/src
parent2478267d11fddfd798fee89227b5f258441e1331 (diff)
parent35d4a8fd0ec558b3a2a20bc6ffd0f1048ffc4c4d (diff)
downloadvaadin-framework-db5fc67b3833e0424f5773c68dd98291282ebad1.tar.gz
vaadin-framework-db5fc67b3833e0424f5773c68dd98291282ebad1.zip
Merge branch 'grid-7.5' of ssh://dev.vaadin.com:29418/vaadin into grid-7.5
Diffstat (limited to 'uitest/src')
-rw-r--r--uitest/src/com/vaadin/tests/components/grid/basicfeatures/EscalatorBasicClientFeaturesTest.java1
-rw-r--r--uitest/src/com/vaadin/tests/components/grid/basicfeatures/escalator/EscalatorSpacerTest.java69
2 files changed, 70 insertions, 0 deletions
diff --git a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/EscalatorBasicClientFeaturesTest.java b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/EscalatorBasicClientFeaturesTest.java
index e1a3fc0f55..862e959ebc 100644
--- a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/EscalatorBasicClientFeaturesTest.java
+++ b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/EscalatorBasicClientFeaturesTest.java
@@ -83,6 +83,7 @@ public abstract class EscalatorBasicClientFeaturesTest extends MultiBrowserTest
protected static final String REMOVE = "Remove";
protected static final String ROW_MINUS1 = "Row -1";
+ protected static final String ROW_0 = "Row 0";
protected static final String ROW_1 = "Row 1";
protected static final String ROW_25 = "Row 25";
protected static final String ROW_50 = "Row 50";
diff --git a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/escalator/EscalatorSpacerTest.java b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/escalator/EscalatorSpacerTest.java
index 7905906536..71cc19ecdd 100644
--- a/uitest/src/com/vaadin/tests/components/grid/basicfeatures/escalator/EscalatorSpacerTest.java
+++ b/uitest/src/com/vaadin/tests/components/grid/basicfeatures/escalator/EscalatorSpacerTest.java
@@ -17,6 +17,7 @@ package com.vaadin.tests.components.grid.basicfeatures.escalator;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
@@ -28,6 +29,7 @@ import org.junit.Before;
import org.junit.ComparisonFailure;
import org.junit.Test;
import org.openqa.selenium.By;
+import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import com.vaadin.client.WidgetUtil;
@@ -423,6 +425,73 @@ public class EscalatorSpacerTest extends EscalatorBasicClientFeaturesTest {
+ "\")", cssClass.contains("-spacer"));
}
+ @Test
+ public void spacerScrolledIntoViewGetsFocus() {
+ selectMenuPath(FEATURES, SPACERS, FOCUSABLE_UPDATER);
+ selectMenuPath(FEATURES, SPACERS, ROW_50, SET_100PX);
+ selectMenuPath(FEATURES, SPACERS, ROW_50, SCROLL_HERE_ANY_0PADDING);
+
+ tryToTabIntoFocusUpdaterElement();
+ assertEquals("input", getFocusedElement().getTagName());
+ }
+
+ @Test
+ public void spacerScrolledOutOfViewDoesNotGetFocus() {
+ selectMenuPath(FEATURES, SPACERS, FOCUSABLE_UPDATER);
+ selectMenuPath(FEATURES, SPACERS, ROW_1, SET_100PX);
+ selectMenuPath(FEATURES, SPACERS, ROW_50, SCROLL_HERE_ANY_0PADDING);
+
+ tryToTabIntoFocusUpdaterElement();
+ assertNotEquals("input", getFocusedElement().getTagName());
+ }
+
+ @Test
+ public void spacerOpenedInViewGetsFocus() {
+ selectMenuPath(FEATURES, SPACERS, FOCUSABLE_UPDATER);
+ selectMenuPath(FEATURES, SPACERS, ROW_1, SET_100PX);
+ tryToTabIntoFocusUpdaterElement();
+ assertEquals("input", getFocusedElement().getTagName());
+ }
+
+ @Test
+ public void spacerOpenedOutOfViewDoesNotGetFocus() {
+ selectMenuPath(FEATURES, SPACERS, FOCUSABLE_UPDATER);
+ selectMenuPath(FEATURES, SPACERS, ROW_50, SET_100PX);
+
+ tryToTabIntoFocusUpdaterElement();
+ assertNotEquals("input", getFocusedElement().getTagName());
+ }
+
+ @Test
+ public void spacerOpenedInViewAndScrolledOutAndBackAgainGetsFocus() {
+ selectMenuPath(FEATURES, SPACERS, FOCUSABLE_UPDATER);
+ selectMenuPath(FEATURES, SPACERS, ROW_1, SET_100PX);
+ selectMenuPath(COLUMNS_AND_ROWS, BODY_ROWS, SCROLL_TO, ROW_50);
+ selectMenuPath(FEATURES, SPACERS, ROW_1, SCROLL_HERE_ANY_0PADDING);
+
+ tryToTabIntoFocusUpdaterElement();
+ assertEquals("input", getFocusedElement().getTagName());
+ }
+
+ @Test
+ public void spacerOpenedOutOfViewAndScrolledInAndBackAgainDoesNotGetFocus() {
+ selectMenuPath(FEATURES, SPACERS, FOCUSABLE_UPDATER);
+ selectMenuPath(FEATURES, SPACERS, ROW_50, SET_100PX);
+ selectMenuPath(FEATURES, SPACERS, ROW_50, SCROLL_HERE_ANY_0PADDING);
+ selectMenuPath(COLUMNS_AND_ROWS, BODY_ROWS, SCROLL_TO, ROW_0);
+
+ tryToTabIntoFocusUpdaterElement();
+ assertNotEquals("input", getFocusedElement().getTagName());
+ }
+
+ private void tryToTabIntoFocusUpdaterElement() {
+ getEscalator().sendKeys( //
+ Keys.TAB, // v-ui v-scrollable
+ Keys.TAB, // menubar
+ Keys.TAB // <input>
+ );
+ }
+
private WebElement getChild(WebElement parent, int childIndex) {
return (WebElement) executeScript("return arguments[0].children["
+ childIndex + "];", parent);