use of org.apache.wicket.request.resource.IResource.Attributes in project wicket by apache.
the class MinifiedAwareResourceReferenceTest method renderResource.
private String renderResource(ResourceReference reference) {
ByteArrayResponse byteResponse = new ByteArrayResponse();
Attributes mockAttributes = new Attributes(tester.getRequestCycle().getRequest(), byteResponse);
reference.getResource().respond(mockAttributes);
return new String(byteResponse.getBytes());
}
use of org.apache.wicket.request.resource.IResource.Attributes in project wicket by apache.
the class PackageResourceReferenceTest method testContentRangeHeaders.
/**
* See WICKET-5819 - Media tags
*/
@Test
public void testContentRangeHeaders() {
// Test header fields
ResourceReference reference = new PackageResourceReference(scope, "resource.txt", locales[1], styles[1], variations[1]);
Request request = tester.getRequestCycle().getRequest();
Response response = tester.getRequestCycle().getResponse();
MockHttpServletResponse mockHttpServletResponse = (MockHttpServletResponse) response.getContainerResponse();
Attributes mockAttributes = new Attributes(request, response);
reference.getResource().respond(mockAttributes);
Assert.assertEquals(ContentRangeType.BYTES.getTypeName(), mockHttpServletResponse.getHeader("Accept-Range"));
// For normal: If a resource supports content range no content is delivered
// if no "Range" header is given, but we have to deliver it, because
// other resources then media should get the content. (e.g. CSS, JS, etc.) Browsers
// detecting media requests and automatically add the "Range" header for
// partial content and they don't make an initial request to detect if a media
// resource supports Content-Range (by the Accept-Range header)
Assert.assertEquals("resource_var_style_en.txt", new String(mockHttpServletResponse.getBinaryContent()));
}
use of org.apache.wicket.request.resource.IResource.Attributes in project wicket by apache.
the class PackageResourceReferenceTest method resourceResponse.
/**
*/
@Test
public void resourceResponse() {
for (Locale locale : locales) {
for (String style : styles) {
for (String variation : variations) {
ResourceReference reference = new PackageResourceReference(scope, "resource.txt", locale, style, variation);
ByteArrayResponse byteResponse = new ByteArrayResponse();
Attributes mockAttributes = new Attributes(tester.getRequestCycle().getRequest(), byteResponse);
reference.getResource().respond(mockAttributes);
String fileContent = new String(byteResponse.getBytes());
if (locale != null) {
assertTrue(fileContent.contains(locale.getLanguage()));
if (locale.getCountry() != null) {
assertTrue(fileContent.contains(locale.getCountry()));
}
}
if (style != null) {
assertTrue(fileContent.contains(style));
}
if (variation != null) {
assertTrue(fileContent.contains(variation));
}
}
}
}
}
use of org.apache.wicket.request.resource.IResource.Attributes in project wicket by apache.
the class PackageResourceReferenceTest method makeRangeRequestToBigResource.
private String makeRangeRequestToBigResource(String range) {
ResourceReference reference = new PackageResourceReference(scope, "resource_gt_4096.txt", null, null, null);
ByteArrayResponse byteResponse = new ByteArrayResponse();
Request request = tester.getRequestCycle().getRequest();
MockHttpServletRequest mockHttpServletRequest = (MockHttpServletRequest) request.getContainerRequest();
mockHttpServletRequest.setHeader("range", range);
Attributes mockAttributes = new Attributes(request, byteResponse);
reference.getResource().respond(mockAttributes);
return new String(byteResponse.getBytes());
}
use of org.apache.wicket.request.resource.IResource.Attributes in project wicket by apache.
the class PackageResourceReferenceTest method makeRangeRequest.
private String makeRangeRequest(String range) {
ResourceReference reference = new PackageResourceReference(scope, "resource.txt", locales[1], styles[1], variations[1]);
ByteArrayResponse byteResponse = new ByteArrayResponse();
Request request = tester.getRequestCycle().getRequest();
MockHttpServletRequest mockHttpServletRequest = (MockHttpServletRequest) request.getContainerRequest();
mockHttpServletRequest.setHeader("range", range);
Attributes mockAttributes = new Attributes(request, byteResponse);
reference.getResource().respond(mockAttributes);
return new String(byteResponse.getBytes());
}
Aggregations