@Test public void testAB2() throws Exception { RouterAssert router = new RouterAssert(); router.append("/a/b/"); // assertNull(router.route("a/b")); assertNull(router.route("/a/b")); router.assertRoute(Collections.<String, String>emptyMap(), "/a/b/"); router.assertRoute(Collections.<String, String>emptyMap(), "a/b/"); assertNull(router.route("")); assertNull(router.route("/")); assertNull(router.route("/b")); assertNull(router.route("b")); assertNull(router.route("/a/b/c")); }
@Test public void testA3() throws Exception { RouterAssert router = new RouterAssert(); router.append("/a", RouteKind.MATCH_ANY); // router.assertRoute(Collections.<String, String>emptyMap(), "/a"); router.assertRoute(Collections.<String, String>emptyMap(), "a"); router.assertRoute(Collections.<String, String>emptyMap(), "a/"); router.assertRoute(Collections.<String, String>emptyMap(), "/a/"); assertNull(router.route("")); assertNull(router.route("/")); assertNull(router.route("/b")); assertNull(router.route("b")); assertNull(router.route("/a/b")); }
@Test public void testSimplePattern() throws Exception { RouterAssert router = new RouterAssert(); router.append("/{p}", Collections.singletonMap(Names.P, PathParam.matching("a"))); // router.assertRoute(Collections.singletonMap(Names.P, "a"), "/a"); router.assertRoute(Collections.singletonMap(Names.P, "a"), "a"); assertNull(router.route("/ab")); assertNull(router.route("ab")); }
@Test public void testRoot2() throws Exception { RouterAssert router = new RouterAssert(); router.append(""); // router.assertRoute(Collections.<String, String>emptyMap(), ""); router.assertRoute(Collections.<String, String>emptyMap(), "/"); assertNull(router.route("/a")); assertNull(router.route("a")); }
@Test public void testRoot2() throws Exception { RouterAssert router = new RouterAssert(); router.append(""); // router.assertRoute(Collections.<String, String>emptyMap(), ""); router.assertRoute(Collections.<String, String>emptyMap(), "/"); assertNull(router.route("/a")); assertNull(router.route("a")); }
@Test public void testRoot3() throws Exception { RouterAssert router = new RouterAssert(); router.append("/", RouteKind.MATCH_ANY); // router.assertRoute(Collections.<String, String>emptyMap(), ""); router.assertRoute(Collections.<String, String>emptyMap(), "/"); assertNull(router.route("/a")); assertNull(router.route("a")); }
@Test public void testRoot3() throws Exception { RouterAssert router = new RouterAssert(); router.append("/", RouteKind.MATCH_ANY); // router.assertRoute(Collections.<String, String>emptyMap(), ""); router.assertRoute(Collections.<String, String>emptyMap(), "/"); assertNull(router.route("/a")); assertNull(router.route("a")); }
@Test public void testRoot1() throws Exception { RouterAssert router = new RouterAssert(); Route foo = router.append("/"); assertNotSame(foo, router); // router.assertRoute(Collections.<String, String>emptyMap(), ""); router.assertRoute(Collections.<String, String>emptyMap(), "/"); assertNull(router.route("/a")); assertNull(router.route("a")); }
@Test public void testSimplePattern() throws Exception { RouterAssert router = new RouterAssert(); router.append("/{p}", Collections.singletonMap(Names.P, PathParam.matching("a"))); // router.assertRoute(Collections.singletonMap(Names.P, "a"), "/a"); router.assertRoute(Collections.singletonMap(Names.P, "a"), "a"); assertNull(router.route("/ab")); assertNull(router.route("ab")); }
@Test public void testRoot1() throws Exception { RouterAssert router = new RouterAssert(); Route foo = router.append("/"); assertNotSame(foo, router); // router.assertRoute(Collections.<String, String>emptyMap(), ""); router.assertRoute(Collections.<String, String>emptyMap(), "/"); assertNull(router.route("/a")); assertNull(router.route("a")); }
@Test public void testPrecedence() throws Exception { RouterAssert router = new RouterAssert(); router.append("/a"); router.append("/{p}/b", Collections.singletonMap(Names.P, PathParam.matching("a"))); // router.assertRoute(Collections.<String, String>emptyMap(), "a"); router.assertRoute(Collections.<String, String>emptyMap(), "/a"); assertNull(router.route("/a/")); router.assertRoute(Collections.singletonMap(Names.P, "a"), "/a/b"); }
@Test public void testPrecedence() throws Exception { RouterAssert router = new RouterAssert(); router.append("/a"); router.append("/{p}/b", Collections.singletonMap(Names.P, PathParam.matching("a"))); // router.assertRoute(Collections.<String, String>emptyMap(), "a"); router.assertRoute(Collections.<String, String>emptyMap(), "/a"); assertNull(router.route("/a/")); router.assertRoute(Collections.singletonMap(Names.P, "a"), "/a/b"); }
@Test public void testParamPreservePath() throws Exception { RouterAssert router = new RouterAssert(); Route a = router.append("/{p}", Collections.singletonMap(Names.P, PathParam.matching("[^/]+").preservePath(true))); // Route router.assertRoute(Collections.singletonMap(Names.P, "_"), "/_"); assertNull(router.route("//")); // Render assertNull(a.matches(Collections.singletonMap(Names.P, "/"))); }
@Test public void testParamPreservePath() throws Exception { RouterAssert router = new RouterAssert(); Route a = router.append("/{p}", Collections.singletonMap(Names.P, PathParam.matching("[^/]+").preservePath(true))); // Route router.assertRoute(Collections.singletonMap(Names.P, "_"), "/_"); assertNull(router.route("//")); // Render assertNull(a.matches(Collections.singletonMap(Names.P, "/"))); }
@Test public void testPartialMatching() throws Exception { RouterAssert router = new RouterAssert(); router.append("/{a}", Collections.singletonMap(Names.A, PathParam.matching("abc").preservePath(true))); // assertNull(router.route("/abcdef")); }
@Test public void testPartialMatching() throws Exception { RouterAssert router = new RouterAssert(); router.append("/{a}", Collections.singletonMap(Names.A, PathParam.matching("abc").preservePath(true))); // assertNull(router.route("/abcdef")); }
@Test public void testLanguage2() throws Exception { RouterAssert router = new RouterAssert(); Route r = router.append("/{gtn:lang}/public", Collections.singletonMap(Names.GTN_LANG, PathParam.matching(LANG_PATTERN))); // router.assertRoute(Collections.singletonMap(Names.GTN_LANG, ""), "/public"); assertNull(router.route("/f/public")); router.assertRoute(Collections.singletonMap(Names.GTN_LANG, "fr"), "/fr/public"); assertEquals("/public", r.matches(Collections.singletonMap(Names.GTN_LANG, "")).render()); assertNull(r.matches(Collections.singletonMap(Names.GTN_LANG, "f"))); assertEquals("/fr/public", r.matches(Collections.singletonMap(Names.GTN_LANG, "fr")).render()); assertEquals("/fr-FR/public", r.matches(Collections.singletonMap(Names.GTN_LANG, "fr-FR")).render()); }
@Test public void testLanguage2() throws Exception { RouterAssert router = new RouterAssert(); Route r = router.append("/{gtn:lang}/public", Collections.singletonMap(Names.GTN_LANG, PathParam.matching(LANG_PATTERN))); // router.assertRoute(Collections.singletonMap(Names.GTN_LANG, ""), "/public"); assertNull(router.route("/f/public")); router.assertRoute(Collections.singletonMap(Names.GTN_LANG, "fr"), "/fr/public"); assertEquals("/public", r.matches(Collections.singletonMap(Names.GTN_LANG, "")).render()); assertNull(r.matches(Collections.singletonMap(Names.GTN_LANG, "f"))); assertEquals("/fr/public", r.matches(Collections.singletonMap(Names.GTN_LANG, "fr")).render()); assertEquals("/fr-FR/public", r.matches(Collections.singletonMap(Names.GTN_LANG, "fr-FR")).render()); }
@Test public void testFoo() throws Exception { RouterAssert router = new RouterAssert(); Route a = router.append("/a", RouteKind.CONNECT); Route b= a.append("/b"); // // assertEquals(Collections.singletonMap(QualifiedName.create("foo"), "bar"), router.route("/a")); assertNull(router.route("/a")); // router.assertRoute(b, "/a/b"); } }
@Test public void testFoo() throws Exception { RouterAssert router = new RouterAssert(); Route a = router.append("/a", RouteKind.CONNECT); Route b= a.append("/b"); // // assertEquals(Collections.singletonMap(QualifiedName.create("foo"), "bar"), router.route("/a")); assertNull(router.route("/a")); // router.assertRoute(b, "/a/b"); } }