/******************************************************************************************************************* * ******************************************************************************************************************/ @Test public void must_output_a_ResourceFile_when_Etag_not_Matching() throws Exception { headers.put(HEADER_IF_NONE_MATCH, "\"xxxx\""); final ResponseBuilder<?> builder = underTest.response().fromFile(resourceFile) .forRequest(request); assertContents(builder, "ResourceFileOutput.txt"); }
/******************************************************************************************************************* * ******************************************************************************************************************/ @Test public void must_output_NotModified_when_Etag_Matching() throws Exception { headers.put(HEADER_IF_NONE_MATCH, "\"1341242553456\""); final ResponseBuilder<?> builder = underTest.response().fromFile(resourceFile) .forRequest(request); assertContents(builder, "ResourceFileNotModifiedOutput.txt"); }
final Object content = mimeType.startsWith("text/") ? macroExpander.get().filter(file.asText("UTF-8"), mimeType) : file.asBytes(); responseHolder.response().forRequest(request) .withBody(content) .withContentType(mimeType)
/******************************************************************************************************************* * ******************************************************************************************************************/ @Test public void must_output_a_ResourceFile_when_IfModifiedSince_less_recent_than_ModifiedTime() throws Exception { for (int deltaSeconds = -10; deltaSeconds < 0; deltaSeconds++) { final DateTime ifModifiedSinceTime = resourceLatestModifiedTime.plusSeconds(deltaSeconds); headers.put(HEADER_IF_MODIFIED_SINCE, toString(ifModifiedSinceTime)); final ResponseBuilder<?> builder = underTest.response().fromFile(resourceFile) .forRequest(request); assertContents(builder, "ResourceFileOutput.txt"); } }
/******************************************************************************************************************* * ******************************************************************************************************************/ @Test public void must_output_NotModified_when_IfModifiedSince_more_recent_than_or_equal_to_ModifiedTime() throws Exception { // corner case: same time should return NotModified for (int deltaSeconds = 0; deltaSeconds < 10; deltaSeconds++) { final DateTime ifModifiedSinceTime = resourceLatestModifiedTime.plusSeconds(deltaSeconds); headers.put(HEADER_IF_MODIFIED_SINCE, toString(ifModifiedSinceTime)); final ResponseBuilder<?> builder = underTest.response().fromFile(resourceFile) .forRequest(request); assertContents(builder, "ResourceFileNotModifiedOutput.txt"); } }
.forRequest(request) .put(); return BREAK;