Program: 60551
Project: 60551
Buggy source:
private void pathInfoWithServletStyleMatching(final String requestUri,final String contextPath,String mapping,final String expectedPathInfo,final String servletPath) throws IOException, ServletException {
  Injector injector=createMock(Injector.class);
  HttpServletRequest request=createMock(HttpServletRequest.class);
  HttpServletResponse response=createMock(HttpServletResponse.class);
  expect(injector.getBinding(Key.get(HttpServlet.class))).andReturn(createMock(Binding.class));
  final boolean[] run=new boolean[1];
  expect(injector.getInstance(Key.get(HttpServlet.class))).andReturn(new HttpServlet(){
    @Override protected void service(    HttpServletRequest servletRequest,    HttpServletResponse httpServletResponse) throws ServletException, IOException {
      final String path=servletRequest.getPathInfo();
      if (null == expectedPathInfo) {
        assertNull(String.format("String_Node_Str",expectedPathInfo,path),path);
      }
 else {
        assertEquals(String.format("String_Node_Str",expectedPathInfo,path),expectedPathInfo,path);
      }
      assertSame("String_Node_Str",path,servletRequest.getPathInfo());
      run[0]=true;
    }
  }
);
  expect(request.getRequestURI()).andReturn(requestUri);
  expect(request.getServletPath()).andReturn(servletPath).anyTimes();
  expect(request.getContextPath()).andReturn(contextPath);
  replay(injector,request);
  ServletDefinition servletDefinition=new ServletDefinition(mapping,Key.get(HttpServlet.class),UriPatternType.get(UriPatternType.SERVLET,mapping),new HashMap<String,String>());
  servletDefinition.init(null,injector);
  servletDefinition.doService(request,response);
  assertTrue("String_Node_Str",run[0]);
}

Fixed version (ground truth):
private void pathInfoWithServletStyleMatching(final String requestUri,final String contextPath,String mapping,final String expectedPathInfo,final String servletPath) throws IOException, ServletException {
  Injector injector=createMock(Injector.class);
  HttpServletRequest request=createMock(HttpServletRequest.class);
  HttpServletResponse response=createMock(HttpServletResponse.class);
  expect(injector.getBinding(Key.get(HttpServlet.class))).andReturn(createMock(Binding.class));
  final boolean[] run=new boolean[1];
  expect(injector.getInstance(Key.get(HttpServlet.class))).andReturn(new HttpServlet(){
    @Override protected void service(    HttpServletRequest servletRequest,    HttpServletResponse httpServletResponse) throws ServletException, IOException {
      final String path=servletRequest.getPathInfo();
      if (null == expectedPathInfo) {
        assertNull(String.format("String_Node_Str",expectedPathInfo,path),path);
      }
 else {
        assertEquals(String.format("String_Node_Str",expectedPathInfo,path),expectedPathInfo,path);
      }
      assertSame("String_Node_Str",path,servletRequest.getPathInfo());
      run[0]=true;
    }
  }
);
  expect(request.getRequestURI()).andReturn(requestUri);
  expect(request.getServletPath()).andReturn(servletPath).anyTimes();
  expect(request.getContextPath()).andReturn(contextPath);
  replay(injector,request);
  ServletDefinition servletDefinition=new ServletDefinition(mapping,Key.get(HttpServlet.class),UriPatternType.get(UriPatternType.SERVLET,mapping),new HashMap<String,String>());
  servletDefinition.init(null,injector,Sets.<HttpServlet>newIdentityHashSet(ReferenceType.STRONG));
  servletDefinition.doService(request,response);
  assertTrue("String_Node_Str",run[0]);
}