@Test
void testMacrosDups() {
WebApp webapp = new WebApp();
webapp.start();
ActionsManager actionsManager = webapp.madvocContainer().lookupComponent(ActionsManager.class);
webapp.madvocContainer().lookupComponent(RootPackages.class).addRootPackageOf(this.getClass());
actionsManager.setPathMacroClass(RegExpPathMacros.class);
actionsManager.registerAction(ReAction.class, "duplo2", null);
actionsManager.registerAction(ReAction.class, "duplo1", null);
ActionRuntime cfg = actionsManager.lookup("GET", MadvocUtil.splitPathToChunks("/re/duplo/123"));
assertNotNull(cfg);
assertEquals(ReAction.class, cfg.getActionClass());
assertEquals("/re/duplo/{id:^[0-9]+}", cfg.getActionPath());
RouteChunk chunk = cfg.getRouteChunk();
assertEquals(1, chunk.pathMacros().macrosCount());
assertEquals("id", chunk.pathMacros().names()[0]);
cfg = actionsManager.lookup("GET", MadvocUtil.splitPathToChunks("/re/duplo/aaa"));
assertNotNull(cfg);
assertEquals(ReAction.class, cfg.getActionClass());
assertEquals("/re/duplo/{sid}", cfg.getActionPath());
chunk = cfg.getRouteChunk();
assertEquals(1, chunk.pathMacros().macrosCount());
assertEquals("sid", chunk.pathMacros().names()[0]);
assertEquals(2, actionsManager.getActionsCount());
}