]> source.dussan.org Git - vaadin-framework.git/commitdiff
Added testbench test for #5789, #2428 and #5792
authorJohn Alhroos <john.ahlroos@itmill.com>
Tue, 16 Nov 2010 09:39:07 +0000 (09:39 +0000)
committerJohn Alhroos <john.ahlroos@itmill.com>
Tue, 16 Nov 2010 09:39:07 +0000 (09:39 +0000)
svn changeset:15998/svn branch:6.5

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

diff --git a/tests/src/com/vaadin/tests/components/table/TableUndefinedSize.html b/tests/src/com/vaadin/tests/components/table/TableUndefinedSize.html
new file mode 100644 (file)
index 0000000..6c1e64a
--- /dev/null
@@ -0,0 +1,132 @@
+<?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>/vaadin65/run/com.vaadin.tests.components.table.TableUndefinedSize?restartApplication</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>UndefinedSizeTable</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[0]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>verifyTextPresent</td>
+       <td>exact:1: Size 200x200 pixels</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>FixedSize200x200Table</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[1]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>verifyTextPresent</td>
+       <td>exact:2: Size 600x200 pixels<br />1: Size 200x200 pixels</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>FixedSize600x200Table</td>
+</tr>
+<tr>
+       <td>click</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[2]/VButton[0]/domChild[0]/domChild[0]</td>
+       <td></td>
+</tr>
+<tr>
+       <td>verifyTextPresent</td>
+       <td>exact:3: Size undefined<br />2: Size 600x200 pixels<br />1: Size 200x200 pixels</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>UndefinedSizeTable</td>
+</tr>
+<tr>
+       <td>select</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[3]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=4</td>
+</tr>
+<tr>
+       <td>verifyTextPresent</td>
+       <td>exact:4: Page length: 4<br />3: Size undefined<br />2: Size 600x200 pixels<br />1: Size 200x200 pixels</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>PageLength4</td>
+</tr>
+<tr>
+       <td>select</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[0]/VHorizontalLayout[0]/ChildComponentContainer[3]/VNativeSelect[0]/domChild[0]</td>
+       <td>label=10</td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>PageLength10</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/domChild[0]/domChild[3]</td>
+       <td>1102,215</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VCheckBox[0]/domChild[0]</td>
+       <td>3,6</td>
+</tr>
+<tr>
+       <td>verifyTextPresent</td>
+       <td>Column 2</td>
+       <td></td>
+</tr>
+<tr>
+       <td>verifyTextPresent</td>
+       <td>Column 3</td>
+       <td></td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>Column1Hidden</td>
+</tr>
+<tr>
+       <td>mouseClick</td>
+       <td>vaadin=vaadin65runcomvaadintestscomponentstableTableUndefinedSize::/VVerticalLayout[0]/ChildComponentContainer[1]/VVerticalLayout[0]/ChildComponentContainer[1]/VHorizontalLayout[0]/ChildComponentContainer[0]/VCheckBox[0]/domChild[0]</td>
+       <td>3,3</td>
+</tr>
+<tr>
+       <td>screenCapture</td>
+       <td></td>
+       <td>AllColumnsShown</td>
+</tr>
+
+</tbody></table>
+</body>
+</html>
diff --git a/tests/src/com/vaadin/tests/components/table/TableUndefinedSize.java b/tests/src/com/vaadin/tests/components/table/TableUndefinedSize.java
new file mode 100644 (file)
index 0000000..2b32049
--- /dev/null
@@ -0,0 +1,165 @@
+package com.vaadin.tests.components.table;
+
+import java.util.Arrays;
+
+import com.vaadin.data.Container;
+import com.vaadin.data.Property;
+import com.vaadin.data.Property.ValueChangeEvent;
+import com.vaadin.data.util.IndexedContainer;
+import com.vaadin.data.util.ObjectProperty;
+import com.vaadin.tests.components.TestBase;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.Button.ClickEvent;
+import com.vaadin.ui.CheckBox;
+import com.vaadin.ui.HorizontalLayout;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.NativeSelect;
+import com.vaadin.ui.Table;
+
+public class TableUndefinedSize extends TestBase {
+
+    private ObjectProperty<String> output = new ObjectProperty<String>("");
+
+    private int counter = 1;
+
+    @Override
+    protected void setup() {
+
+        HorizontalLayout controls = new HorizontalLayout();
+        controls.setSpacing(true);
+        addComponent(controls);
+
+        HorizontalLayout visibilities = new HorizontalLayout();
+        visibilities.setSpacing(true);
+        addComponent(visibilities);
+
+        final Table tbl = new Table("", createDataSource());
+        tbl.setImmediate(true);
+        tbl.setColumnCollapsingAllowed(true);
+
+        Label output = new Label(this.output);
+        output.setWidth("400px");
+        output.setHeight("100px");
+        output.setContentMode(Label.CONTENT_XHTML);
+
+        controls.addComponent(new Button("Fixed size (200x200)",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        tbl.setWidth("200px");
+                        tbl.setHeight("200px");
+                        print("Size 200x200 pixels");
+                    }
+                }));
+
+        controls.addComponent(new Button("Fixed size (600x200)",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        tbl.setWidth("600px");
+                        tbl.setHeight("200px");
+                        print("Size 600x200 pixels");
+                    }
+                }));
+
+        controls.addComponent(new Button("Undefined size",
+                new Button.ClickListener() {
+                    public void buttonClick(ClickEvent event) {
+                        tbl.setSizeUndefined();
+                        print("Size undefined");
+                    }
+                }));
+
+        NativeSelect pageLength = new NativeSelect("PageLength", Arrays.asList(
+                0, 1, 2, 4, 8, 10));
+        pageLength.setImmediate(true);
+        pageLength.setNullSelectionAllowed(false);
+        pageLength.addListener(new Property.ValueChangeListener() {
+            public void valueChange(ValueChangeEvent event) {
+                int pageLength = Integer.valueOf(event.getProperty().getValue()
+                        .toString());
+                tbl.setPageLength(pageLength);
+                print("Page length: " + pageLength);
+            }
+        });
+        controls.addComponent(pageLength);
+
+        CheckBox cb = new CheckBox("Column 1", new Button.ClickListener() {
+            public void buttonClick(ClickEvent event) {
+                tbl.setColumnCollapsed("Column 1", !event.getButton()
+                                .booleanValue());
+                if (event.getButton().booleanValue()) {
+                    print("Column 1 visible");
+                } else {
+                    print("Column 1 hidden");
+                }
+                    }
+        });
+        cb.setImmediate(true);
+        cb.setValue(true);
+        visibilities.addComponent(cb);
+
+        cb = new CheckBox("Column 2", new Button.ClickListener() {
+            public void buttonClick(ClickEvent event) {
+                tbl.setColumnCollapsed("Column 2", !event.getButton()
+                        .booleanValue());
+
+                if (event.getButton().booleanValue()) {
+                    print("Column 2 visible");
+                } else {
+                    print("Column 2 hidden");
+                }
+            }
+        });
+        cb.setImmediate(true);
+        cb.setValue(true);
+        visibilities.addComponent(cb);
+
+        cb = new CheckBox("Column 3", new Button.ClickListener() {
+            public void buttonClick(ClickEvent event) {
+                tbl.setColumnCollapsed("Column 3", !event.getButton()
+                        .booleanValue());
+
+                if (event.getButton().booleanValue()) {
+                    print("Column 3 visible");
+                } else {
+                    print("Column 3 hidden");
+                }
+            }
+        });
+        cb.setImmediate(true);
+        cb.setValue(true);
+        visibilities.addComponent(cb);
+
+        addComponent(output);
+        addComponent(tbl);
+
+    }
+
+    protected void print(String message) {
+        output.setValue(counter + ": " + message + "<br/>" + output.getValue());
+        counter++;
+    }
+
+    protected Container createDataSource() {
+        IndexedContainer c = new IndexedContainer();
+        c.addContainerProperty("Column 1", String.class, "Column 1");
+        c.addContainerProperty("Column 2", String.class, "Column 2");
+        c.addContainerProperty("Column 3", String.class, "Column 3");
+
+        for (int i = 0; i < 50; i++) {
+            c.addItem();
+        }
+
+        return c;
+    }
+
+    @Override
+    protected String getDescription() {
+        return "";
+    }
+
+    @Override
+    protected Integer getTicketNumber() {
+        return 5789;
+    }
+
+}