@PathParam
404142434445464748495051
@Test public void testSpacing2() throws Exception { String expression = "#{ /test/ name:point}"; PathParameter param = new PathParameter(); param.setExpression(expression); param = p.process(param); assertEquals("#{name:point}", param.getExpression().getELExpression()); assertEquals("test", param.getRegex()); }
525354555657585960616263
@Test public void testSpacing3() throws Exception { String expression = "#{/test/ name}"; PathParameter param = new PathParameter(); param.setExpression(expression); param = p.process(param); assertEquals("#{name}", param.getExpression().getELExpression()); assertEquals("test", param.getRegex()); }
646566676869707172737475
@Test public void testSpacing4() throws Exception { String expression = "#{ /test/name:point.p}"; PathParameter param = new PathParameter(); param.setExpression(expression); param = p.process(param); assertEquals("#{name:point.p}", param.getExpression().getELExpression()); assertEquals("test", param.getRegex()); }
767778798081828384858687
@Test public void testBoundaries() throws Exception { String expression = "#{ /te/st/name}"; PathParameter param = new PathParameter(); param.setExpression(expression); param = p.process(param); assertEquals("#{name}", param.getExpression().getELExpression()); assertEquals("te/st", param.getRegex()); }
888990919293949596979899
@Test public void testBoundaries2() throws Exception { String expression = "#{ /te[^/]+/st/name}"; PathParameter param = new PathParameter(); param.setExpression(expression); param = p.process(param); assertEquals("#{name}", param.getExpression().getELExpression()); assertEquals("te[^/]+/st", param.getRegex()); }
343536373839404142434445
{ URLPatternParser parser = new URLPatternParser("/foo/#{ /(?!=admin)[^/]+/ named}/"); List<PathParameter> params = parser.parse(new URL("/foo/love/")); assertEquals(1, params.size()); PathParameter p = params.get(0); assertEquals(0, p.getPosition()); assertEquals("love", p.getValue()); assertEquals("named", p.getName()); assertEquals("#{named}", p.getExpression().getELExpression()); assertEquals("(?!=admin)[^/]+", p.getRegex()); }
495051525354555657585960
{ URLPatternParser parser = new URLPatternParser("/foo/#{ /.*/ named}/"); List<PathParameter> params = parser.parse(new URL("/foo/love/again/")); assertEquals(1, params.size()); PathParameter p = params.get(0); assertEquals(0, p.getPosition()); assertEquals("love/again", p.getValue()); assertEquals("named", p.getName()); assertEquals("#{named}", p.getExpression().getELExpression()); assertEquals(".*", p.getRegex()); }
{ URLPatternParser parser = new URLPatternParser("/#{ /.*/ named}/"); List<PathParameter> params = parser.parse(new URL("/foo/love/again/")); assertEquals(1, params.size()); PathParameter p = params.get(0); assertEquals(0, p.getPosition()); assertEquals("foo/love/again", p.getValue()); assertEquals("named", p.getName()); assertEquals("#{named}", p.getExpression().getELExpression()); assertEquals(".*", p.getRegex()); }
798081828384858687888990
{ URLPatternParser parser = new URLPatternParser("/foo/#{ /(\\\\d+/\\\\w+)/ inje.cted}/"); List<PathParameter> params = parser.parse(new URL("/foo/2010/again/")); assertEquals(1, params.size()); PathParameter p = params.get(0); assertEquals(0, p.getPosition()); assertEquals("2010/again", p.getValue()); assertEquals("com.ocpsoft.vP_0", p.getName()); assertEquals("#{inje.cted}", p.getExpression().getELExpression()); assertEquals("(\\\\d+/\\\\w+)", p.getRegex()); }
949596979899100101102103104105
{ URLPatternParser parser = new URLPatternParser("/foo/#{ /(\\\\d+/\\\\w+)/ inje.cted}/and-#{valued}"); List<PathParameter> params = parser.parse(new URL("/foo/2010/again/and-avalue")); assertEquals(2, params.size()); PathParameter p = params.get(1); assertEquals(1, p.getPosition()); assertEquals("avalue", p.getValue()); assertEquals("valued", p.getName()); assertEquals("#{valued}", p.getExpression().getELExpression()); assertEquals("[^/]+", p.getRegex()); }