]> source.dussan.org Git - vaadin-framework.git/commitdiff
Test for #5911 - ApplicationConnection assumes portlet urls contain parameters
authorArtur Signell <artur.signell@itmill.com>
Thu, 18 Nov 2010 15:16:12 +0000 (15:16 +0000)
committerArtur Signell <artur.signell@itmill.com>
Thu, 18 Nov 2010 15:16:12 +0000 (15:16 +0000)
svn changeset:16044/svn branch:6.5

tests/src/com/vaadin/tests/gwtadapter/applicationconnection/URLGeneration.java [new file with mode: 0644]

diff --git a/tests/src/com/vaadin/tests/gwtadapter/applicationconnection/URLGeneration.java b/tests/src/com/vaadin/tests/gwtadapter/applicationconnection/URLGeneration.java
new file mode 100644 (file)
index 0000000..0ccc455
--- /dev/null
@@ -0,0 +1,77 @@
+package com.vaadin.tests.gwtadapter.applicationconnection;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+\r
+import org.junit.Test;\r
+\r
+import com.vaadin.terminal.gwt.client.ApplicationConnection;\r
+\r
+public class URLGeneration {\r
+\r
+    private static final String[] URIS = new String[] {\r
+            "http://demo.vaadin.com/", //\r
+            "https://demo.vaadin.com/",\r
+            "http://demo.vaadin.com/foo",\r
+            "http://demo.vaadin.com/foo?f",\r
+            "http://demo.vaadin.com/foo?f=1",\r
+            "http://demo.vaadin.com:1234/foo?a",\r
+            "http://demo.vaadin.com:1234/foo#frag?fakeparam",\r
+            // Jetspeed\r
+            "http://localhost:8080/jetspeed/portal/_ns:Z3RlbXBsYXRlLXRvcDJfX3BhZ2UtdGVtcGxhdGVfX2RwLTFfX1AtMTJjNTRkYjdlYjUtMTAwMDJ8YzB8ZDF8aVVJREx8Zg__",\r
+            // Liferay generated url\r
+            "http://vaadin.com/directory?p_p_id=Directory_WAR_Directory&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_resource_id=UIDL&p_p_cacheability=cacheLevelPage&p_p_col_id=row-1&p_p_col_count=1",\r
+\r
+    };\r
+    private static final String[] URIS_WITH_ABCD_PARAM = new String[] {\r
+            "http://demo.vaadin.com/?a=b&c=d",\r
+            "https://demo.vaadin.com/?a=b&c=d",\r
+            "http://demo.vaadin.com/foo?a=b&c=d",\r
+            "http://demo.vaadin.com/foo?f&a=b&c=d",\r
+            "http://demo.vaadin.com/foo?f=1&a=b&c=d",\r
+            "http://demo.vaadin.com:1234/foo?a&a=b&c=d",\r
+            "http://demo.vaadin.com:1234/foo?a=b&c=d#frag?fakeparam",\r
+            "http://localhost:8080/jetspeed/portal/_ns:Z3RlbXBsYXRlLXRvcDJfX3BhZ2UtdGVtcGxhdGVfX2RwLTFfX1AtMTJjNTRkYjdlYjUtMTAwMDJ8YzB8ZDF8aVVJREx8Zg__?a=b&c=d",\r
+            "http://vaadin.com/directory?p_p_id=Directory_WAR_Directory&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_resource_id=UIDL&p_p_cacheability=cacheLevelPage&p_p_col_id=row-1&p_p_col_count=1&a=b&c=d",\r
+\r
+    };\r
+\r
+    private static final String[] URIS_WITH_ABCD_PARAM_AND_FRAGMENT = new String[] {\r
+            "http://demo.vaadin.com/?a=b&c=d#fragment",\r
+            "https://demo.vaadin.com/?a=b&c=d#fragment",\r
+            "http://demo.vaadin.com/foo?a=b&c=d#fragment",\r
+            "http://demo.vaadin.com/foo?f&a=b&c=d#fragment",\r
+            "http://demo.vaadin.com/foo?f=1&a=b&c=d#fragment",\r
+            "http://demo.vaadin.com:1234/foo?a&a=b&c=d#fragment",\r
+            "",\r
+            "http://localhost:8080/jetspeed/portal/_ns:Z3RlbXBsYXRlLXRvcDJfX3BhZ2UtdGVtcGxhdGVfX2RwLTFfX1AtMTJjNTRkYjdlYjUtMTAwMDJ8YzB8ZDF8aVVJREx8Zg__?a=b&c=d#fragment",\r
+            "http://vaadin.com/directory?p_p_id=Directory_WAR_Directory&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_resource_id=UIDL&p_p_cacheability=cacheLevelPage&p_p_col_id=row-1&p_p_col_count=1&a=b&c=d#fragment",\r
+\r
+    };\r
+\r
+    @Test\r
+    public void testParameterAdding() {\r
+        for (int i = 0; i < URIS.length; i++) {\r
+            // Adding nothing\r
+            assertEquals(URIS[i],\r
+                    ApplicationConnection.addGetParameters(URIS[i], ""));\r
+\r
+            // Adding a=b&c=d\r
+            assertEquals(URIS_WITH_ABCD_PARAM[i],\r
+                    ApplicationConnection.addGetParameters(URIS[i], "a=b&c=d"));\r
+\r
+            // Fragments\r
+            if (URIS_WITH_ABCD_PARAM_AND_FRAGMENT[i].length() > 0) {\r
+                assertEquals(\r
+                        URIS_WITH_ABCD_PARAM_AND_FRAGMENT[i],\r
+                        ApplicationConnection.addGetParameters(URIS[i]\r
+                                + "#fragment", "a=b&c=d"));\r
+\r
+                // Empty fragment\r
+                assertEquals(URIS_WITH_ABCD_PARAM_AND_FRAGMENT[i].replace(\r
+                        "#fragment", "#"),\r
+                        ApplicationConnection.addGetParameters(URIS[i] + "#",\r
+                                "a=b&c=d"));\r
+            }\r
+        }\r
+    }\r
+}\r