]> source.dussan.org Git - vaadin-framework.git/commitdiff
Sort collections in valueChangeListener to get consistent test results
authorArtur Signell <artur.signell@itmill.com>
Tue, 21 Dec 2010 09:24:20 +0000 (09:24 +0000)
committerArtur Signell <artur.signell@itmill.com>
Tue, 21 Dec 2010 09:24:20 +0000 (09:24 +0000)
svn changeset:16596/svn branch:6.5

tests/src/com/vaadin/tests/components/abstractfield/AbstractFieldTest.java
tests/src/com/vaadin/tests/components/table/TableMultiSelectMouse.html

index 26df5114b56f76192eea2ac7bf508a527fbe9990..d7bcdfe1dbc01a6c4d7e05fab907281fe93b75d8 100644 (file)
@@ -1,6 +1,8 @@
 package com.vaadin.tests.components.abstractfield;\r
 \r
 import java.util.ArrayList;\r
+import java.util.Collection;\r
+import java.util.Collections;\r
 import java.util.LinkedHashMap;\r
 import java.util.List;\r
 \r
@@ -136,8 +138,22 @@ public abstract class AbstractFieldTest<T extends AbstractField> extends
         }\r
     };\r
 \r
+    @SuppressWarnings({ "rawtypes", "unchecked" })\r
     public void valueChange(com.vaadin.data.Property.ValueChangeEvent event) {\r
         Object o = event.getProperty().getValue();\r
+        if (o instanceof Collection) {\r
+            // Sort collections to avoid problems with values printed in\r
+            // different order\r
+            try {\r
+                ArrayList<Comparable> c = new ArrayList<Comparable>(\r
+                        (Collection) o);\r
+                Collections.sort(c);\r
+                o = c;\r
+            } catch (Exception e) {\r
+                // continue with unsorted if sorting fails for some reason\r
+                log("Exception while sorting value: " + e.getMessage());\r
+            }\r
+        }\r
 \r
         // Distinguish between null and 'null'\r
         String value = "null";\r
index a082e002faba04903eb7e2836ccbde814a080a5e..8d7c0d98b08f0e97202e1354510536520a76cf41 100644 (file)
@@ -94,7 +94,7 @@
 <tr>\r
        <td>assertText</td>\r
        <td>vaadin=runcomvaadintestscomponentstableTables::PID_SLog/ChildComponentContainer[0]/VLabel[0]</td>\r
-       <td>1. ValueChangeEvent, new value: '[Item 3, Item 4, Item 9, Item 5, Item 6, Item 7, Item 8]'</td>\r
+       <td>1. ValueChangeEvent, new value: '[Item 3, Item 4, Item 5, Item 6, Item 7, Item 8, Item 9]'</td>\r
 </tr>\r
 <tr>\r
        <td>screenCapture</td>\r
 <tr>\r
        <td>assertText</td>\r
        <td>vaadin=runcomvaadintestscomponentstableTables::PID_SLog/ChildComponentContainer[0]/VLabel[0]</td>\r
-       <td>5. ValueChangeEvent, new value: '[Item 9, Item 5, Item 6, Item 10, Item 7, Item 8]'</td>\r
+       <td>5. ValueChangeEvent, new value: '[Item 10, Item 5, Item 6, Item 7, Item 8, Item 9]'</td>\r
 </tr>\r
 <tr>\r
        <td>screenCapture</td>\r
 <tr>\r
        <td>assertText</td>\r
        <td>vaadin=runcomvaadintestscomponentstableTables::PID_SLog/ChildComponentContainer[0]/VLabel[0]</td>\r
-       <td>9. ValueChangeEvent, new value: '[Item 4, Item 9, Item 5, Item 6, Item 10, Item 7, Item 8]'</td>\r
+       <td>9. ValueChangeEvent, new value: '[Item 10, Item 4, Item 5, Item 6, Item 7, Item 8, Item 9]'</td>\r
 </tr>\r
 <!--The same thing with nullselectallowed == false-->\r
 <tr>\r
 <tr>\r
        <td>assertText</td>\r
        <td>vaadin=runcomvaadintestscomponentstableTables::PID_SLog/ChildComponentContainer[0]/VLabel[0]</td>\r
-       <td>1. ValueChangeEvent, new value: '[Item 3, Item 4, Item 9, Item 5, Item 6, Item 7, Item 8]'</td>\r
+       <td>1. ValueChangeEvent, new value: '[Item 3, Item 4, Item 5, Item 6, Item 7, Item 8, Item 9]'</td>\r
 </tr>\r
 <tr>\r
        <td>screenCapture</td>\r
 <tr>\r
        <td>assertText</td>\r
        <td>vaadin=runcomvaadintestscomponentstableTables::PID_SLog/ChildComponentContainer[0]/VLabel[0]</td>\r
-       <td>5. ValueChangeEvent, new value: '[Item 9, Item 5, Item 6, Item 10, Item 7, Item 8]'</td>\r
+       <td>5. ValueChangeEvent, new value: '[Item 10, Item 5, Item 6, Item 7, Item 8, Item 9]'</td>\r
 </tr>\r
 <tr>\r
        <td>screenCapture</td>\r
 <tr>\r
        <td>assertText</td>\r
        <td>vaadin=runcomvaadintestscomponentstableTables::PID_SLog/ChildComponentContainer[0]/VLabel[0]</td>\r
-       <td>9. ValueChangeEvent, new value: '[Item 4, Item 9, Item 5, Item 6, Item 10, Item 7, Item 8]'</td>\r
+       <td>9. ValueChangeEvent, new value: '[Item 10, Item 4, Item 5, Item 6, Item 7, Item 8, Item 9]'</td>\r
 </tr>\r
 </tbody></table>\r
 </body>\r