You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ApplicationConnectionURLGenerationTest.java 3.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package com.vaadin.client;
  2. import static org.junit.Assert.assertEquals;
  3. import org.junit.Test;
  4. import com.vaadin.shared.util.SharedUtil;
  5. public class ApplicationConnectionURLGenerationTest {
  6. private static final String[] URIS = { "http://demo.vaadin.com/", //
  7. "https://demo.vaadin.com/", "http://demo.vaadin.com/foo",
  8. "http://demo.vaadin.com/foo?f", "http://demo.vaadin.com/foo?f=1",
  9. "http://demo.vaadin.com:1234/foo?a",
  10. "http://demo.vaadin.com:1234/foo#frag?fakeparam",
  11. // Jetspeed
  12. "http://localhost:8080/jetspeed/portal/_ns:Z3RlbXBsYXRlLXRvcDJfX3BhZ2UtdGVtcGxhdGVfX2RwLTFfX1AtMTJjNTRkYjdlYjUtMTAwMDJ8YzB8ZDF8aVVJREx8Zg__",
  13. // Liferay generated url
  14. "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",
  15. };
  16. private static final String[] URIS_WITH_ABCD_PARAM = {
  17. "http://demo.vaadin.com/?a=b&c=d",
  18. "https://demo.vaadin.com/?a=b&c=d",
  19. "http://demo.vaadin.com/foo?a=b&c=d",
  20. "http://demo.vaadin.com/foo?f&a=b&c=d",
  21. "http://demo.vaadin.com/foo?f=1&a=b&c=d",
  22. "http://demo.vaadin.com:1234/foo?a&a=b&c=d",
  23. "http://demo.vaadin.com:1234/foo?a=b&c=d#frag?fakeparam",
  24. "http://localhost:8080/jetspeed/portal/_ns:Z3RlbXBsYXRlLXRvcDJfX3BhZ2UtdGVtcGxhdGVfX2RwLTFfX1AtMTJjNTRkYjdlYjUtMTAwMDJ8YzB8ZDF8aVVJREx8Zg__?a=b&c=d",
  25. "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",
  26. };
  27. private static final String[] URIS_WITH_ABCD_PARAM_AND_FRAGMENT = {
  28. "http://demo.vaadin.com/?a=b&c=d#fragment",
  29. "https://demo.vaadin.com/?a=b&c=d#fragment",
  30. "http://demo.vaadin.com/foo?a=b&c=d#fragment",
  31. "http://demo.vaadin.com/foo?f&a=b&c=d#fragment",
  32. "http://demo.vaadin.com/foo?f=1&a=b&c=d#fragment",
  33. "http://demo.vaadin.com:1234/foo?a&a=b&c=d#fragment", "",
  34. "http://localhost:8080/jetspeed/portal/_ns:Z3RlbXBsYXRlLXRvcDJfX3BhZ2UtdGVtcGxhdGVfX2RwLTFfX1AtMTJjNTRkYjdlYjUtMTAwMDJ8YzB8ZDF8aVVJREx8Zg__?a=b&c=d#fragment",
  35. "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",
  36. };
  37. @Test
  38. public void testParameterAdding() {
  39. for (int i = 0; i < URIS.length; i++) {
  40. // Adding nothing
  41. assertEquals(URIS[i], SharedUtil.addGetParameters(URIS[i], ""));
  42. // Adding a=b&c=d
  43. assertEquals(URIS_WITH_ABCD_PARAM[i],
  44. SharedUtil.addGetParameters(URIS[i], "a=b&c=d"));
  45. // Fragments
  46. if (!URIS_WITH_ABCD_PARAM_AND_FRAGMENT[i].isEmpty()) {
  47. assertEquals(URIS_WITH_ABCD_PARAM_AND_FRAGMENT[i], SharedUtil
  48. .addGetParameters(URIS[i] + "#fragment", "a=b&c=d"));
  49. // Empty fragment
  50. assertEquals(
  51. URIS_WITH_ABCD_PARAM_AND_FRAGMENT[i]
  52. .replace("#fragment", "#"),
  53. SharedUtil.addGetParameters(URIS[i] + "#", "a=b&c=d"));
  54. }
  55. }
  56. }
  57. }