📄 testrequestutils.java
字号:
assertTrue("Different form beans get different instances 1",
value != value1);
value = dform.get("stringArray1");
value1 = dform1.get("stringArray1");
assertTrue("Different form beans get different instances 2",
value != value1);
dform1.set("stringProperty", "Different stringProperty value");
value = dform.get("stringProperty");
value1 = dform1.get("stringProperty");
assertTrue("Different form beans get different instances 3",
value != value1);
}
// ----------------------------------------------------------- forwardURL()
// Default module (default forwardPattern)
public void testForwardURL1() {
request.setAttribute(Globals.MODULE_KEY, moduleConfig);
request.setPathElements("/myapp", "/action.do", null, null);
ForwardConfig forward = null;
String result = null;
// redirect=false, module=null
forward = moduleConfig.findForwardConfig("moduleForward");
assertNotNull("moduleForward found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleForward computed", result);
assertEquals("moduleForward value", "/module/forward", result);
// redirect=true, module=null
forward = moduleConfig.findForwardConfig("moduleRedirect");
assertNotNull("moduleRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleRedirect computed", result);
assertEquals("moduleRedirect value", "/module/redirect", result);
// redirect=false, module=/context
forward = moduleConfig.findForwardConfig("contextForward");
assertNotNull("contextForward found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextForward computed", result);
assertEquals("contextForward value", "/context/forward", result);
// redirect=true, module=/context
forward = moduleConfig.findForwardConfig("contextRedirect");
assertNotNull("contextRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextRedirect computed", result);
assertEquals("contextRedirct value", "/context/redirect", result);
// noslash, module=null
forward = moduleConfig.findForwardConfig("moduleNoslash");
assertNotNull("moduleNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleNoslash computed", result);
assertEquals("moduleNoslash value", "/module/noslash", result);
// noslash, module=/
forward = moduleConfig.findForwardConfig("contextNoslash");
assertNotNull("contextNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextNoslash computed", result);
assertEquals("contextNoslash value", "/context/noslash", result);
}
// Second module (default forwardPattern)
public void testForwardURL2() {
request.setAttribute(Globals.MODULE_KEY, moduleConfig2);
request.setPathElements("/myapp", "/2/action.do", null, null);
ForwardConfig forward = null;
String result = null;
// redirect=false, module=null
forward = moduleConfig2.findForwardConfig("moduleForward");
assertNotNull("moduleForward found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleForward computed", result);
assertEquals("moduleForward value", "/2/module/forward", result);
// redirect=true, module=null
forward = moduleConfig2.findForwardConfig("moduleRedirect");
assertNotNull("moduleRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleRedirect computed", result);
assertEquals("moduleRedirect value", "/2/module/redirect", result);
// redirect=false, module=/context
forward = moduleConfig2.findForwardConfig("contextForward");
assertNotNull("contextForward found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextForward computed", result);
assertEquals("contextForward value", "/context/forward", result);
// redirect=true, module=/context
forward = moduleConfig2.findForwardConfig("contextRedirect");
assertNotNull("contextRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextRedirect computed", result);
assertEquals("contextRedirct value", "/context/redirect", result);
// noslash, module=null
forward = moduleConfig2.findForwardConfig("moduleNoslash");
assertNotNull("moduleNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleNoslash computed", result);
assertEquals("moduleNoslash value", "/2/module/noslash", result);
// noslash, module=/
forward = moduleConfig2.findForwardConfig("contextNoslash");
assertNotNull("contextNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextNoslash computed", result);
assertEquals("contextNoslash value", "/context/noslash", result);
}
// Third module (custom forwardPattern)
public void testForwardURL3() {
request.setAttribute(Globals.MODULE_KEY, moduleConfig3);
request.setPathElements("/myapp", "/3/action.do", null, null);
ForwardConfig forward = null;
String result = null;
// redirect=false, module=null
forward = moduleConfig3.findForwardConfig("moduleForward");
assertNotNull("moduleForward found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleForward computed", result);
assertEquals("moduleForward value", "/forwarding/3/module/forward",
result);
// redirect=true, module=null
forward = moduleConfig3.findForwardConfig("moduleRedirect");
assertNotNull("moduleRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleRedirect computed", result);
assertEquals("moduleRedirect value", "/forwarding/3/module/redirect",
result);
// redirect=false, module=/context
forward = moduleConfig3.findForwardConfig("contextForward");
assertNotNull("contextForward found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextForward computed", result);
assertEquals("contextForward value", "/forwarding/context/forward",
result);
// redirect=true, module=/context
forward = moduleConfig3.findForwardConfig("contextRedirect");
assertNotNull("contextRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextRedirect computed", result);
assertEquals("contextRedirct value", "/forwarding/context/redirect",
result);
// noslash, module=null
forward = moduleConfig3.findForwardConfig("moduleNoslash");
assertNotNull("moduleNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("moduleNoslash computed", result);
assertEquals("moduleNoslash value", "/forwarding/3/module/noslash",
result);
// noslash, module=/
forward = moduleConfig3.findForwardConfig("contextNoslash");
assertNotNull("contextNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, null);
assertNotNull("contextNoslash computed", result);
assertEquals("contextNoslash value", "/forwarding/context/noslash",
result);
}
// Cross module forwards
public void testForwardURLa() {
request.setAttribute(Globals.MODULE_KEY, moduleConfig);
request.setPathElements("/myapp", "/action.do", null, null);
ForwardConfig forward = null;
String result = null;
// redirect=false, contextRelative=false, link to module 3
forward = moduleConfig3.findForwardConfig("moduleForward");
assertNotNull("moduleForward found", forward);
result = RequestUtils.forwardURL(request, forward, moduleConfig3);
assertNotNull("moduleForward computed", result);
assertEquals("moduleForward value", "/forwarding/3/module/forward",
result);
// redirect=true, contextRelative=false, link to module 3
forward = moduleConfig3.findForwardConfig("moduleRedirect");
assertNotNull("moduleRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, moduleConfig3);
assertNotNull("moduleRedirect computed", result);
assertEquals("moduleRedirect value", "/forwarding/3/module/redirect",
result);
// redirect=false, module=/context
forward = moduleConfig3.findForwardConfig("contextForward");
assertNotNull("contextForward found", forward);
result = RequestUtils.forwardURL(request, forward, moduleConfig3);
assertNotNull("contextForward computed", result);
assertEquals("contextForward value", "/forwarding/context/forward",
result);
// redirect=true, module=/context
forward = moduleConfig3.findForwardConfig("contextRedirect");
assertNotNull("contextRedirect found", forward);
result = RequestUtils.forwardURL(request, forward, moduleConfig3);
assertNotNull("contextRedirect computed", result);
assertEquals("contextRedirct value", "/forwarding/context/redirect",
result);
// noslash, contextRelative=false, link to module 3
forward = moduleConfig3.findForwardConfig("moduleNoslash");
assertNotNull("moduleNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, moduleConfig3);
assertNotNull("moduleNoslash computed", result);
assertEquals("moduleNoslash value", "/forwarding/3/module/noslash",
result);
// noslash, module=/
forward = moduleConfig3.findForwardConfig("contextNoslash");
assertNotNull("contextNoslash found", forward);
result = RequestUtils.forwardURL(request, forward, moduleConfig3);
assertNotNull("contextNoslash computed", result);
assertEquals("contextNoslash value", "/forwarding/context/noslash",
result);
}
// ----------------------------------------------------------- requestURL()
public void testRequestURL() {
request.setPathElements("/myapp", "/foo.do", null, null);
String url = null;
try {
url = RequestUtils.requestURL(request).toString();
} catch (MalformedURLException e) {
fail("MalformedURLException: " + e);
}
assertNotNull("URL was returned", url);
assertEquals("URL value", "http://localhost:8080/myapp/foo.do", url);
}
// ---------------------------------------------------- selectApplication()
// Map to the default module -- direct
public void testSelectApplication1a() {
request.setPathElements("/myapp", "/noform.do", null, null);
ModuleUtils.getInstance().selectModule(request, context);
ModuleConfig moduleConfig =
(ModuleConfig) request.getAttribute(Globals.MODULE_KEY);
assertNotNull("Selected a module", moduleConfig);
assertEquals("Selected correct module", "", moduleConfig.getPrefix());
// FIXME - check module resources?
}
// Map to the second module -- direct
public void testSelectApplication1b() {
String[] prefixes = { "/1", "/2" };
context.setAttribute(Globals.MODULE_PREFIXES_KEY, prefixes);
request.setPathElements("/myapp", "/2/noform.do", null, null);
ModuleUtils.getInstance().selectModule(request, context);
ModuleConfig moduleConfig =
(ModuleConfig) request.getAttribute(Globals.MODULE_KEY);
assertNotNull("Selected a module", moduleConfig);
assertEquals("Selected correct module", "/2", moduleConfig.getPrefix());
// FIXME - check module resources?
}
// Map to the default module -- include
public void testSelectApplication2a() {
request.setPathElements("/myapp", "/2/noform.do", null, null);
request.setAttribute(RequestProcessor.INCLUDE_SERVLET_PATH, "/noform.do");
ModuleUtils.getInstance().selectModule(request, context);
ModuleConfig moduleConfig =
(ModuleConfig) request.getAttribute(Globals.MODULE_KEY);
assertNotNull("Selected an application", moduleConfig);
assertEquals("Selected correct application", "",
moduleConfig.getPrefix());
// FIXME - check application resources?
}
// Map to the second module -- include
public void testSelectApplication2b() {
String[] prefixes = { "/1", "/2" };
context.setAttribute(Globals.MODULE_PREFIXES_KEY, prefixes);
request.setPathElements("/myapp", "/noform.do", null, null);
request.setAttribute(RequestProcessor.INCLUDE_SERVLET_PATH,
"/2/noform.do");
ModuleUtils.getInstance().selectModule(request, context);
ModuleConfig moduleConfig =
(ModuleConfig) request.getAttribute(Globals.MODULE_KEY);
assertNotNull("Selected a module", moduleConfig);
assertEquals("Selected correct module", "/2", moduleConfig.getPrefix());
// FIXME - check application resources?
}
// ------------------------------------------------------------ serverURL()
// Basic test on values in mock objects
public void testServerURL() {
String url = null;
try {
url = RequestUtils.serverURL(request).toString();
} catch (MalformedURLException e) {
fail("Threw MalformedURLException: " + e);
}
assertNotNull("serverURL is present", url);
assertEquals("serverURL value", "http://localhost:8080", url);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -