use of jodd.madvoc.WebApp in project jodd by oblac.
the class ActionsManagerTest method testActionPathMacros_679.
@Test
void testActionPathMacros_679() {
WebApp webapp = new WebApp();
webapp.start();
ActionsManager actionsManager = webapp.madvocContainer().lookupComponent(ActionsManager.class);
actionsManager.setPathMacroClass(RegExpPathMacros.class);
ActionRuntime a1 = actionsManager.registerAction(FooAction.class, "one", new ActionDefinition("/hello/{id}"));
ActionRuntime a2 = actionsManager.registerAction(FooAction.class, "two", new ActionDefinition("/hello/default"));
ActionRuntime actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/hello/123"));
assertSame(a1, actionRuntime);
actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/hello/default"));
assertSame(a2, actionRuntime);
}
use of jodd.madvoc.WebApp in project jodd by oblac.
the class ActionsManagerTest method testActionPathMacrosWildcard.
@Test
void testActionPathMacrosWildcard() {
WebApp webapp = new WebApp();
webapp.start();
ActionsManager actionsManager = webapp.madvocContainer().lookupComponent(ActionsManager.class);
actionsManager.setPathMacroClass(WildcardPathMacros.class);
actionsManager.registerAction(FooAction.class, "one", new ActionDefinition("/{one:a?a}"));
ActionRuntime actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/aaa"));
assertNotNull(actionRuntime);
actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/aab"));
assertNull(actionRuntime);
}
use of jodd.madvoc.WebApp in project jodd by oblac.
the class ActionsManagerTest method testActionPathMacros1.
@Test
void testActionPathMacros1() {
WebApp webapp = new WebApp();
webapp.start();
ActionsManager actionsManager = webapp.madvocContainer().lookupComponent(ActionsManager.class);
actionsManager.registerAction(FooAction.class, "one", new ActionDefinition("/{one}"));
ActionRuntime actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/foo"));
assertNotNull(actionRuntime);
actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/foo/boo"));
assertNull(actionRuntime);
actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/foo/boo/zoo"));
assertNull(actionRuntime);
}
use of jodd.madvoc.WebApp in project jodd by oblac.
the class ActionsManagerTest method testActionPathMacros2.
@Test
void testActionPathMacros2() {
WebApp webapp = new WebApp();
webapp.start();
ActionsManager actionsManager = webapp.madvocContainer().lookupComponent(ActionsManager.class);
actionsManager.registerAction(FooAction.class, "two", new ActionDefinition("/xxx-{two}"));
actionsManager.registerAction(FooAction.class, "one", new ActionDefinition("/{one}"));
ActionRuntime actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/foo"));
assertEquals("one", actionRuntime.getActionClassMethod().getName());
actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/foo/boo"));
assertNull(actionRuntime);
actionRuntime = actionsManager.routes.lookup(null, MadvocUtil.splitPathToChunks("/xxx-foo"));
// best match!
assertEquals("two", actionRuntime.getActionClassMethod().getName());
}
Aggregations