use of com.github.bordertech.wcomponents.WText in project wcomponents by BorderTech.
the class ResponseCacheInterceptor_Test method testOverridePageNoCache.
@Test
public void testOverridePageNoCache() {
/**
* Original config.
*/
Configuration originalConfig;
originalConfig = Config.getInstance();
String override = "OVERRIDE CONTENT NO CACHE";
try {
// Test override cache settings
Configuration config = Config.copyConfiguration(originalConfig);
config.setProperty(ConfigurationProperties.RESPONSE_NO_CACHE_SETTINGS, override);
Config.setConfiguration(config);
// Create interceptor
ResponseCacheInterceptor interceptor = new ResponseCacheInterceptor(CacheType.CONTENT_NO_CACHE);
interceptor.setBackingComponent(new WText());
// Mock Response
MockResponse response = new MockResponse();
interceptor.attachResponse(response);
// Render phase
interceptor.paint(new WebXmlRenderContext(response.getWriter()));
// Check Override
Assert.assertEquals("Cache-Control header not overriden correctly for CONTENT NO CACHE", override, response.getHeaders().get("Cache-Control"));
} finally {
// Remove overrides
Config.setConfiguration(originalConfig);
}
}
use of com.github.bordertech.wcomponents.WText in project wcomponents by BorderTech.
the class ResponseCacheInterceptor_Test method testCache.
@Test
public void testCache() {
// Create interceptor
ResponseCacheInterceptor interceptor = new ResponseCacheInterceptor(CacheType.CONTENT_CACHE);
interceptor.setBackingComponent(new WText());
// Mock Response
MockResponse response = new MockResponse();
interceptor.attachResponse(response);
// Render phase
interceptor.paint(new WebXmlRenderContext(response.getWriter()));
Assert.assertEquals("Cache-Control header not set correctly for CACHE", ConfigurationProperties.getResponseCacheSettings(), response.getHeaders().get("Cache-Control"));
Assert.assertNull("Pragma header should be null for CACHE", response.getHeaders().get("Pragma"));
Assert.assertNull("Expires header should be null for CACHE", response.getHeaders().get("Expires"));
}
use of com.github.bordertech.wcomponents.WText in project wcomponents by BorderTech.
the class ResponseCacheInterceptor_Test method testNoCache.
@Test
public void testNoCache() {
// Create interceptor
ResponseCacheInterceptor interceptor = new ResponseCacheInterceptor(CacheType.CONTENT_NO_CACHE);
interceptor.setBackingComponent(new WText());
// Mock Response
MockResponse response = new MockResponse();
interceptor.attachResponse(response);
// Render phase
interceptor.paint(new WebXmlRenderContext(response.getWriter()));
Assert.assertEquals("Cache-Control header not set correctly for NO_CACHE", ConfigurationProperties.getResponseNoCacheSettings(), response.getHeaders().get("Cache-Control"));
Assert.assertEquals("Pragma header not set correctly for NO_CACHE", "no-cache", response.getHeaders().get("Pragma"));
Assert.assertEquals("Expires header not set correctly for NO_CACHE", "-1", response.getHeaders().get("Expires"));
}
use of com.github.bordertech.wcomponents.WText in project wcomponents by BorderTech.
the class ResponseCacheInterceptor_Test method testOverrideDefaultCache.
@Test
public void testOverrideDefaultCache() {
/**
* Original config.
*/
Configuration originalConfig;
originalConfig = Config.getInstance();
String override = "OVERRIDE CACHE";
try {
// Test override cache settings
Configuration config = Config.copyConfiguration(originalConfig);
config.setProperty(ConfigurationProperties.RESPONSE_CACHE_SETTINGS, override);
Config.setConfiguration(config);
// Create interceptor
ResponseCacheInterceptor interceptor = new ResponseCacheInterceptor(CacheType.CONTENT_CACHE);
interceptor.setBackingComponent(new WText());
// Mock Response
MockResponse response = new MockResponse();
interceptor.attachResponse(response);
// Render phase
interceptor.paint(new WebXmlRenderContext(response.getWriter()));
// Check Override
Assert.assertEquals("Cache-Control header not overriden correctly for CACHE", override, response.getHeaders().get("Cache-Control"));
} finally {
// Remove overrides
Config.setConfiguration(originalConfig);
}
}
use of com.github.bordertech.wcomponents.WText in project wcomponents by BorderTech.
the class BorderLayoutRenderer_Test method testDoRender.
@Test
public void testDoRender() throws IOException, SAXException, XpathException {
final String northText = "BorderRenderer_Test.testPaint.northText";
final String westText = "BorderRenderer_Test.testPaint.westText";
final String southText = "BorderRenderer_Test.testPaint.southText";
final String eastText = "BorderRenderer_Test.testPaint.eastText";
final String centerText = "BorderRenderer_Test.testPaint.centerText";
WPanel container = new WPanel();
container.setLayout(new BorderLayout(GAP, BIG_GAP));
assertSchemaMatch(container);
assertXpathEvaluatesTo(GAP.toString(), "//ui:panel/ui:borderlayout/@hgap", container);
assertXpathEvaluatesTo(BIG_GAP.toString(), "//ui:panel/ui:borderlayout/@vgap", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:north", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:south", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:east", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:west", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:center", container);
container.add(new WText(northText), BorderLayout.NORTH);
container.add(new WText(westText), BorderLayout.WEST);
assertXpathEvaluatesTo(northText, "normalize-space(//ui:panel/ui:borderlayout/ui:north)", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:south", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:east", container);
assertXpathEvaluatesTo(westText, "normalize-space(//ui:panel/ui:borderlayout/ui:west)", container);
assertXpathNotExists("//ui:panel/ui:borderlayout/ui:center", container);
container.add(new WText(southText), BorderLayout.SOUTH);
container.add(new WText(eastText), BorderLayout.EAST);
container.add(new WText(centerText));
assertXpathEvaluatesTo(northText, "normalize-space(//ui:panel/ui:borderlayout/ui:north)", container);
assertXpathEvaluatesTo(westText, "normalize-space(//ui:panel/ui:borderlayout/ui:west)", container);
assertXpathEvaluatesTo(southText, "normalize-space(//ui:panel/ui:borderlayout/ui:south)", container);
assertXpathEvaluatesTo(eastText, "normalize-space(//ui:panel/ui:borderlayout/ui:east)", container);
assertXpathEvaluatesTo(centerText, "normalize-space(//ui:panel/ui:borderlayout/ui:center)", container);
}
Aggregations