private Request mockRequest(String httpMethod, String path) { Request request = mock(Request.class); when(request.getMethod()).thenReturn(httpMethod); when(request.getPath()).thenReturn(path); return request; }
@Test public void should304WithCorrectIfModifiedSinceHeader() throws Exception { String dateString = "Wed, 09 Apr 2008 23:55:38 GMT"; SimpleDateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz"); Date d = format.parse(dateString); Asset asset = new Asset(null, "test.css", "text/css", 34, d.getTime()); AssetLoader assetLoader = mock(AssetLoader.class); when(assetLoader.load("test.css")).thenReturn(asset); StaticMiddleware middleware = new StaticMiddleware(assetLoader, "assets"); Request request = mockRequest("get", "/assets/test.css"); when(request.getHeader("If-Modified-Since")).thenReturn(dateString); Response response = mock(Response.class); middleware.handle(request, response, mock(MiddlewareChain.class)); verify(response).status(Response.NOT_MODIFIED); }