public void testDoFilterWithPotentialPathChanges() throws Exception {
filter.setPrefix("foo_");
filter.setPutEmptyParamsInPath(true);
MockHttpServletRequest request = new MockHttpServletRequest();
request.addParameter("foo_bar|spam", "");
MockFilterChain filterChain = new MockFilterChain();
filter.doFilter(request, new MockHttpServletResponse(), filterChain);
HttpServletRequest result = (HttpServletRequest) filterChain.getRequest();
assertNotSame(request, result);
assertEquals("spam", result.getParameter("bar"));
assertEquals("", result.getContextPath());
}