]> source.dussan.org Git - vaadin-framework.git/commitdiff
added test case (tree + deep component tree)
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Thu, 26 Nov 2009 13:35:07 +0000 (13:35 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Thu, 26 Nov 2009 13:35:07 +0000 (13:35 +0000)
svn changeset:10076/svn branch:6.2

tests/src/com/vaadin/tests/components/tree/TreePerformanceTest.java [new file with mode: 0644]

diff --git a/tests/src/com/vaadin/tests/components/tree/TreePerformanceTest.java b/tests/src/com/vaadin/tests/components/tree/TreePerformanceTest.java
new file mode 100644 (file)
index 0000000..de72a6e
--- /dev/null
@@ -0,0 +1,75 @@
+package com.vaadin.tests.components.tree;
+
+import com.vaadin.tests.components.AbstractTestCase;
+import com.vaadin.ui.Layout;
+import com.vaadin.ui.Tree;
+import com.vaadin.ui.VerticalLayout;
+import com.vaadin.ui.Window;
+
+public class TreePerformanceTest extends AbstractTestCase {
+
+    @Override
+    protected String getDescription() {
+        return "Trees rendering type may become slow escpecially with FF and big tree in a deep component tree.";
+    }
+
+    @Override
+    protected Integer getTicketNumber() {
+        return null;
+    }
+
+    @Override
+    public void init() {
+        Window w = new Window();
+        setMainWindow(w);
+
+        Layout layout = null;
+
+        for (int i = 0; i < getLayoutCount(); i++) {
+            Layout newlayout = createLayout();
+            // newlayout.setHeight("100%");
+            if (i == 0) {
+                w.setContent(newlayout);
+            } else {
+                layout.addComponent(newlayout);
+            }
+            layout = newlayout;
+        }
+
+        Tree tree = new Tree();
+
+        for (int i = 0; i < getItemCount(); i++) {
+            String text = "ITEM " + i;
+            tree.addItem(text);
+            for (int j = 0; j < getSubItemCount(); j++) {
+                String subtext = " SUBITEM " + j + " for " + text;
+                tree.addItem(subtext);
+                tree.setParent(subtext, text);
+            }
+            tree.expandItemsRecursively(text);
+        }
+
+        // One can test that the slugginesh is actually verticallayout issue
+        // Table testTable = TestForTablesInitialColumnWidthLogicRendering
+        // .getTestTable(12, 60);
+        // testTable.setPageLength(0);
+        layout.addComponent(tree);
+
+    }
+
+    private Layout createLayout() {
+        return new VerticalLayout();
+    }
+
+    private int getLayoutCount() {
+        return 10;
+    }
+
+    private int getSubItemCount() {
+        return 3;
+    }
+
+    private int getItemCount() {
+        return 200;
+    }
+}