]> source.dussan.org Git - vaadin-framework.git/commitdiff
Test case for NativeSelect
authorArtur Signell <artur.signell@itmill.com>
Fri, 16 Apr 2010 05:50:08 +0000 (05:50 +0000)
committerArtur Signell <artur.signell@itmill.com>
Fri, 16 Apr 2010 05:50:08 +0000 (05:50 +0000)
svn changeset:12580/svn branch:6.3

tests/src/com/vaadin/tests/components/select/NativeSelects.html [new file with mode: 0644]
tests/src/com/vaadin/tests/components/select/NativeSelects.java [new file with mode: 0644]

diff --git a/tests/src/com/vaadin/tests/components/select/NativeSelects.html b/tests/src/com/vaadin/tests/components/select/NativeSelects.html
new file mode 100644 (file)
index 0000000..caff14b
--- /dev/null
@@ -0,0 +1,177 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<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="" />
+<title>New Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">New Test</td></tr>
+</thead><tbody>
+<tr>
+       <td>open</td>
+       <td>/run/com.vaadin.tests.components.select.NativeSelects?restartApplication</td>
+       <td></td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>select</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[3]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=The second item</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>select</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[4]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=an item 1</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>select</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[7]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=The second item</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>select</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[8]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=an item 1</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>enabled-readwrite-noerror</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VCheckBox[0]/domChild[0]</td>
+       <td>7,6</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>enabled-readonly-noerror</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VCheckBox[0]/domChild[0]</td>
+       <td>31,6</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>enabled-readonly-error</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VCheckBox[0]/domChild[0]</td>
+       <td>3,9</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>enabled-readwrite-error</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[2]/VCheckBox[0]/domChild[0]</td>
+       <td>32,6</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>disabled-readwrite-error</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VCheckBox[0]/domChild[0]</td>
+       <td>47,6</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>disabled-readwrite-noerror</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VCheckBox[0]/domChild[0]</td>
+       <td>31,11</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>disabled-readonly-noerror</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=runcomvaadintestscomponentsselectNativeSelects::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VCheckBox[0]/domChild[0]</td>
+       <td>42,4</td>
+</tr>
+<tr>
+       <td>waitForVaadin</td>
+       <td></td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>disabled-readonly-error</td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
diff --git a/tests/src/com/vaadin/tests/components/select/NativeSelects.java b/tests/src/com/vaadin/tests/components/select/NativeSelects.java
new file mode 100644 (file)
index 0000000..46b5267
--- /dev/null
@@ -0,0 +1,153 @@
+package com.vaadin.tests.components.select;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import com.vaadin.tests.components.ComponentTestCase;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.CheckBox;
+import com.vaadin.ui.Component;
+import com.vaadin.ui.NativeSelect;
+import com.vaadin.ui.Button.ClickEvent;
+
+public class NativeSelects extends ComponentTestCase {
+
+    private static final Object CAPTION = "caption";
+    NativeSelect label[] = new NativeSelect[20];
+
+    @Override
+    protected void setup() {
+        super.setup();
+
+        NativeSelect s;
+
+        s = createNativeSelect(null);
+        s.setWidth(null);
+        addTestComponent(s);
+
+        s = createNativeSelect("Undefined wide, empty select");
+        s.setWidth(null);
+        addTestComponent(s);
+
+        s = createNativeSelect("Undefined wide select with 5 items");
+        s.setWidth(null);
+        addItem(s, "The first item");
+        addItem(s, "The second item");
+        addItem(s, "The third item");
+        addItem(s, "The fourth item");
+        addItem(s, "The fifth item");
+        addTestComponent(s);
+
+        s = createNativeSelect("Undefined wide select with 50 items");
+        s.setWidth(null);
+        populate(s, 50);
+        addTestComponent(s);
+
+        s = createNativeSelect(null);
+        s.setWidth("100px");
+        addTestComponent(s);
+
+        s = createNativeSelect("100px wide, empty select");
+        s.setWidth("100px");
+        addTestComponent(s);
+
+        s = createNativeSelect("150px wide select with 5 items");
+        s.setWidth("150px");
+        addItem(s, "The first item");
+        addItem(s, "The second item");
+        addItem(s, "The third item");
+        addItem(s, "The fourth item");
+        addItem(s, "The fifth item");
+        addTestComponent(s);
+
+        s = createNativeSelect("200px wide select with 50 items");
+        s.setWidth("200px");
+        populate(s, 50);
+        addTestComponent(s);
+
+    }
+
+    private void populate(NativeSelect s, int nr) {
+        String text = " an item ";
+
+        String caption = "";
+        for (int i = 0; i < nr; i++) {
+            if (i % 2 == 0) {
+                caption += text;
+            } else {
+                caption += i;
+            }
+
+            addItem(s, caption);
+        }
+
+    }
+
+    private void addItem(NativeSelect s, String string) {
+        Object id = s.addItem();
+        s.getItem(id).getItemProperty(CAPTION).setValue(string);
+
+    }
+
+    private NativeSelect createNativeSelect(String caption) {
+        NativeSelect s = new NativeSelect();
+
+        s.addContainerProperty(CAPTION, String.class, "");
+        s.setItemCaptionPropertyId(CAPTION);
+        s.setCaption(caption);
+
+        return s;
+    }
+
+    @Override
+    protected String getDescription() {
+        return "A generic test for Labels in different configurations";
+    }
+
+    @Override
+    protected List<Component> createActions() {
+        ArrayList<Component> actions = new ArrayList<Component>();
+
+        CheckBox errorIndicators = new CheckBox("Error indicators",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        Button b = event.getButton();
+                        boolean enabled = (Boolean) b.getValue();
+                        setErrorIndicators(enabled);
+
+                    }
+                });
+
+        CheckBox enabled = new CheckBox("Enabled", new Button.ClickListener() {
+            public void buttonClick(ClickEvent event) {
+                Button b = event.getButton();
+                boolean enabled = (Boolean) b.getValue();
+                setEnabled(enabled);
+            }
+        });
+
+        CheckBox readonly = new CheckBox("Readonly",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        Button b = event.getButton();
+                        boolean enabled = (Boolean) b.getValue();
+                        setReadOnly(enabled);
+                    }
+                });
+
+        errorIndicators.setValue(new Boolean(false));
+        readonly.setValue(new Boolean(false));
+        enabled.setValue(new Boolean(true));
+
+        errorIndicators.setImmediate(true);
+        readonly.setImmediate(true);
+        enabled.setImmediate(true);
+
+        actions.add(errorIndicators);
+        actions.add(readonly);
+        actions.add(enabled);
+
+        return actions;
+    }
+
+}