aboutsummaryrefslogtreecommitdiffstats
path: root/uitest/src
diff options
context:
space:
mode:
authormichaelvogt <michael@vaadin.com>2013-06-24 13:55:55 +0300
committerVaadin Code Review <review@vaadin.com>2013-07-12 11:24:11 +0000
commitc44ca1270523c544b9aedabe7f9780a5e6862859 (patch)
treeb1cae7adffd770634e5c597dadc2b2336c34849f /uitest/src
parente45e036598d6efcf26ba1d2c27b4eeadcb32a9b9 (diff)
downloadvaadin-framework-c44ca1270523c544b9aedabe7f9780a5e6862859.tar.gz
vaadin-framework-c44ca1270523c544b9aedabe7f9780a5e6862859.zip
Tabsheet should not immediately select a tab when changing tab using
keyboard (#11823) Adds the necessary WAI-ARIA roles to the component (#11827) Change-Id: Ie1ed40227679e3497971b834919713614a8cc23e
Diffstat (limited to 'uitest/src')
-rw-r--r--uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigation.html52
-rw-r--r--uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigationWaiAria.java86
2 files changed, 137 insertions, 1 deletions
diff --git a/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigation.html b/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigation.html
index 129061e69c..acf66fb27f 100644
--- a/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigation.html
+++ b/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigation.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-<link rel="selenium.base" href="http://localhost:8068/" />
+<link rel="selenium.base" href="http://localhost:8080/" />
<title>TabKeyboardNavigation</title>
</head>
<body>
@@ -29,6 +29,16 @@
<tr>
<td>assertText</td>
<td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[1]/ChildComponentContainer[0]/VLabel[0]</td>
+ <td>Tab 1</td>
+</tr>
+<tr>
+ <td>pressSpecialKey</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]</td>
+ <td>enter</td>
+</tr>
+<tr>
+ <td>assertText</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[1]/ChildComponentContainer[0]/VLabel[0]</td>
<td>Tab 2</td>
</tr>
<tr>
@@ -49,6 +59,16 @@
<tr>
<td>assertText</td>
<td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[3]/ChildComponentContainer[0]/VLabel[0]</td>
+ <td>Tab 2</td>
+</tr>
+<tr>
+ <td>pressSpecialKey</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[2]</td>
+ <td>enter</td>
+</tr>
+<tr>
+ <td>assertText</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[3]/ChildComponentContainer[0]/VLabel[0]</td>
<td>Tab 5</td>
</tr>
<tr>
@@ -69,6 +89,16 @@
<tr>
<td>assertText</td>
<td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[4]/ChildComponentContainer[0]/VLabel[0]</td>
+ <td>Tab 5</td>
+</tr>
+<tr>
+ <td>pressSpecialKey</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]</td>
+ <td>enter</td>
+</tr>
+<tr>
+ <td>assertText</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[4]/ChildComponentContainer[0]/VLabel[0]</td>
<td>Tab 6</td>
</tr>
<tr>
@@ -124,6 +154,16 @@
<tr>
<td>assertText</td>
<td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[8]/ChildComponentContainer[0]/VLabel[0]</td>
+ <td>Tab 9</td>
+</tr>
+<tr>
+ <td>pressSpecialKey</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[10]</td>
+ <td>enter</td>
+</tr>
+<tr>
+ <td>assertText</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[8]/ChildComponentContainer[0]/VLabel[0]</td>
<td>Tab 12</td>
</tr>
<tr>
@@ -154,6 +194,16 @@
<tr>
<td>assertText</td>
<td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VLabel[0]</td>
+ <td>Tab 5</td>
+</tr>
+<tr>
+ <td>pressSpecialKey</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/domChild[0]/domChild[0]/domChild[0]/domChild[0]/domChild[1]</td>
+ <td>enter</td>
+</tr>
+<tr>
+ <td>assertText</td>
+ <td>vaadin=runTabKeyboardNavigation::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VTabsheet[0]/VTabsheetPanel[0]/VVerticalLayout[0]/ChildComponentContainer[0]/VLabel[0]</td>
<td>Tab 1</td>
</tr>
<tr>
diff --git a/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigationWaiAria.java b/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigationWaiAria.java
new file mode 100644
index 0000000000..e394594176
--- /dev/null
+++ b/uitest/src/com/vaadin/tests/components/tabsheet/TabKeyboardNavigationWaiAria.java
@@ -0,0 +1,86 @@
+package com.vaadin.tests.components.tabsheet;
+
+import java.util.ArrayList;
+
+import com.vaadin.server.VaadinRequest;
+import com.vaadin.tests.components.AbstractTestUI;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.Button.ClickEvent;
+import com.vaadin.ui.Button.ClickListener;
+import com.vaadin.ui.Component;
+import com.vaadin.ui.Layout;
+import com.vaadin.ui.TabSheet;
+import com.vaadin.ui.TabSheet.Tab;
+import com.vaadin.ui.TextField;
+import com.vaadin.ui.VerticalLayout;
+
+public class TabKeyboardNavigationWaiAria extends AbstractTestUI {
+
+ int index = 1;
+ ArrayList<Component> tabs = new ArrayList<Component>();
+ TabSheet ts = new TabSheet();
+
+ @Override
+ protected void setup(VaadinRequest request) {
+ ts.setWidth("500px");
+ ts.setHeight("500px");
+
+ for (int i = 0; i < 5; ++i) {
+ addTab();
+ }
+
+ Button addTab = new Button("Add a tab", new ClickListener() {
+ @Override
+ public void buttonClick(ClickEvent event) {
+ addTab();
+ }
+ });
+ Button focus = new Button("Focus tabsheet", new ClickListener() {
+ @Override
+ public void buttonClick(ClickEvent event) {
+ ts.focus();
+ }
+ });
+
+ addComponent(addTab);
+ addComponent(focus);
+
+ addComponent(ts);
+ }
+
+ @Override
+ protected String getTestDescription() {
+ return "The tab bar should be focusable and arrow keys should change focus for tabs. Space key selects a focused tab. The del key should close a tab if closable.";
+ }
+
+ @Override
+ protected Integer getTicketNumber() {
+ return 11827;
+ }
+
+ private Tab addTab() {
+ Layout content = new VerticalLayout();
+ tabs.add(content);
+
+ TextField field = new TextField("Tab " + index + " label");
+ content.addComponent(field);
+
+ Tab tab = ts.addTab(content, "Tab " + index, null);
+
+ if (index == 2) {
+ tab.setClosable(true);
+ tab.setDescription("Tab 2 Tooltip");
+ }
+
+ if (index == 4) {
+ tab.setEnabled(false);
+ }
+
+ if (index == 5) {
+ tab.setDefaultFocusComponent(field);
+ }
+
+ index++;
+ return tab;
+ }
+}