📄 testtagutils.java
字号:
// use servlet mapping (extension mapping)
// -- path as "/"
// (this is probably not a realistic use case)
public void testString_getActionMappingURL_String_String_PageContext_boolean3() {
pageContext.getServletContext().setAttribute(Globals.SERVLET_KEY, "*.do");
ActionConfig actionConfig = new ActionConfig();
actionConfig.setParameter("/foo");
moduleConfig.addActionConfig(actionConfig);
request.setAttribute(Globals.MODULE_KEY, moduleConfig);
request.setPathElements("/mycontext", "/baz", null, null);
assertEquals("Check path /foo",
tagutils.getActionMappingURL("/", pageContext), "/mycontext/.do");
}
// use servlet mapping (path mapping)
public void testString_getActionMappingURL_String_String_PageContext_boolean4() {
pageContext.getServletContext().setAttribute(Globals.SERVLET_KEY,
"/myapp/*");
ActionConfig actionConfig = new ActionConfig();
actionConfig.setParameter("/foo");
moduleConfig.addActionConfig(actionConfig);
request.setAttribute(Globals.MODULE_KEY, moduleConfig);
request.setPathElements("/mycontext", "/baz", null, null);
assertEquals("Check path /foo",
tagutils.getActionMappingURL("/foo", pageContext),
"/mycontext/myapp/foo");
}
// use servlet mapping (path mapping)
// -- with params
public void testString_getActionMappingURL_String_String_PageContext_boolean5() {
pageContext.getServletContext().setAttribute(Globals.SERVLET_KEY,
"/myapp/*");
ActionConfig actionConfig = new ActionConfig();
actionConfig.setParameter("/foo");
moduleConfig.addActionConfig(actionConfig);
request.setAttribute(Globals.MODULE_KEY, moduleConfig);
request.setPathElements("/mycontext", "/baz?foo=bar", null, null);
assertEquals("Check path /foo",
tagutils.getActionMappingURL("/foo?foo=bar", pageContext),
"/mycontext/myapp/foo?foo=bar");
}
// use servlet mapping (path mapping)
// -- using "/" as mapping
public void testString_getActionMappingURL_String_String_PageContext_boolean6() {
pageContext.getServletContext().setAttribute(Globals.SERVLET_KEY, "/");
ActionConfig actionConfig = new ActionConfig();
actionConfig.setParameter("/foo");
moduleConfig.addActionConfig(actionConfig);
request.setAttribute(Globals.MODULE_KEY, moduleConfig);
request.setPathElements("/mycontext", "/baz", null, null);
assertEquals("Check path /foo",
tagutils.getActionMappingURL("/", pageContext), "/mycontext/");
}
// ------------------------------------------ getActionMessages()
// -- using ActionMessages
public void testActionMessages_getActionMessages_PageContext_String1() {
ActionMessages actionMessages = new ActionMessages();
actionMessages.add("prop", new ActionMessage("key.key"));
request.setAttribute("messages", actionMessages);
try {
ActionMessages messages =
tagutils.getActionMessages(pageContext, "messages");
assertNotNull("messages should not be null", messages);
assertNotNull("messages prop should not be null",
messages.get("prop"));
String val = null;
int i = 0;
for (Iterator iter = messages.get("prop"); iter.hasNext();) {
ActionMessage message = (ActionMessage) iter.next();
val = message.getKey();
i++;
}
assertEquals("only 1 message", i, 1);
assertEquals("messages prop should match", val, "key.key");
} catch (JspException e) {
fail(e.getMessage());
}
}
// -- using ActionErrors
public void testActionMessages_getActionMessages_PageContext_String2() {
ActionMessages actionMessages = new ActionMessages();
actionMessages.add("prop", new ActionMessage("key.key"));
request.setAttribute("messages", actionMessages);
try {
ActionMessages messages =
tagutils.getActionMessages(pageContext, "messages");
assertNotNull("messages should not be null", messages);
assertNotNull("messages prop should not be null",
messages.get("prop"));
String val = null;
int i = 0;
for (Iterator iter = messages.get("prop"); iter.hasNext();) {
ActionMessage message = (ActionMessage) iter.next();
val = message.getKey();
i++;
}
assertEquals("only 1 message", i, 1);
assertEquals("messages prop should match", val, "key.key");
} catch (JspException e) {
fail(e.getMessage());
}
}
// -- using String
public void testActionMessages_getActionMessages_PageContext_String3() {
request.setAttribute("foo", "bar");
try {
ActionMessages messages =
tagutils.getActionMessages(pageContext, "foo");
assertNotNull("messages should not be null", messages);
assertNotNull("messages prop should not be null",
messages.get("prop"));
String key = null;
int i = 0;
for (Iterator iter = messages.get(ActionMessages.GLOBAL_MESSAGE);
iter.hasNext();) {
ActionMessage message = (ActionMessage) iter.next();
key = message.getKey();
Object[] values = message.getValues();
assertNull(values);
i++;
}
assertEquals("only 1 message", i, 1);
assertEquals("key should match", key, "bar");
} catch (JspException e) {
fail(e.getMessage());
}
}
// -- using String Array
public void testActionMessages_getActionMessages_PageContext_String4() {
String[] vals = new String[] { "bar", "baz" };
request.setAttribute("foo", vals);
try {
ActionMessages messages =
tagutils.getActionMessages(pageContext, "foo");
assertNotNull("messages should not be null", messages);
assertNotNull("messages prop should not be null",
messages.get("prop"));
String key = null;
int i = 0;
for (Iterator iter = messages.get(ActionMessages.GLOBAL_MESSAGE);
iter.hasNext();) {
ActionMessage message = (ActionMessage) iter.next();
key = message.getKey();
Object[] values = message.getValues();
assertNull((values));
assertEquals("1st key should match", key, vals[i]);
i++;
}
assertEquals("only 1 message", i, 2);
} catch (JspException e) {
fail(e.getMessage());
}
}
// String Array (thrown JspException)
public void testActionMessages_getActionMessages_PageContext_String5() {
request.setAttribute("foo", new MockFormBean());
ActionMessages messages = null;
try {
messages = tagutils.getActionMessages(pageContext, "foo");
fail("should have thrown JspException");
} catch (JspException e) {
assertNull("messages should be null", messages);
}
}
// ActionMessages (thrown Exception)
// TODO -- currently this does not hit the line for caught Exception
public void testActionMessages_getActionMessages_PageContext_String6() {
ActionMessages actionMessages = new ActionMessages();
actionMessages.add("prop", new ActionMessage("key.key"));
request.setAttribute("messages", actionMessages);
try {
ActionMessages messages =
tagutils.getActionMessages(pageContext, "does-not-exist");
assertNotNull("messages should not be null", messages);
assertNotNull("messages prop should not be null",
messages.get("prop"));
for (Iterator iter = messages.get("prop"); iter.hasNext();) {
fail("Should not have any messages for does-not-exist");
}
} catch (JspException e) {
fail(e.getMessage());
}
}
// ----public ModuleConfig getModuleConfig(PageContext pageContext)
public void testModuleConfig_getModuleConfig_PageContext() {
MockServletConfig mockServletConfig = new MockServletConfig();
ModuleConfig moduleConfig = new ModuleConfigImpl("");
MockServletContext mockServletContext = new MockServletContext();
MockHttpServletRequest mockHttpServletRequest =
new MockHttpServletRequest();
MockHttpServletResponse mockHttpServletResponse =
new MockHttpServletResponse();
mockServletConfig.setServletContext(mockServletContext);
MockPageContext mockPageContext =
new MockPageContext(mockServletConfig, mockHttpServletRequest,
mockHttpServletResponse);
ModuleConfig foundModuleConfig = null;
try {
foundModuleConfig = tagutils.getModuleConfig(mockPageContext);
fail("Expected ModuleConfig to not be found");
} catch (NullPointerException ignore) {
// expected result
}
mockHttpServletRequest.setAttribute(Globals.MODULE_KEY, moduleConfig);
mockPageContext.getServletContext().setAttribute(Globals.MODULE_KEY,
mockPageContext);
foundModuleConfig = tagutils.getModuleConfig(mockPageContext);
assertNotNull(foundModuleConfig);
}
// -- public Locale getUserLocale(PageContext pageContext, String locale)
public void testLocale_getUserLocale_PageContext_String() {
request.setLocale(Locale.ENGLISH);
assertEquals(tagutils.getUserLocale(pageContext, ""), Locale.ENGLISH);
request.setLocale(Locale.CANADA);
assertEquals(tagutils.getUserLocale(pageContext, ""), Locale.CANADA);
}
// -- public boolean isXhtml(PageContext pageContext)
public void test_boolean_isXhtml_PageContext() {
assertFalse(tagutils.isXhtml(pageContext));
pageContext.setAttribute(Globals.XHTML_KEY, "true");
assertTrue(tagutils.isXhtml(pageContext));
}
// -- public Object lookup(PageContext pageContext, String name, String scopeName)
// lookup with null scope
public void test_Object_lookup_PageContext_String__String1() {
pageContext.setAttribute("bean", new MockFormBean());
try {
Object val = tagutils.lookup(pageContext, "bean", null);
assertNotNull((val));
} catch (JspException e) {
fail("bean not found:" + e.getMessage());
}
}
// lookup with page scope
public void test_Object_lookup_PageContext_String__String2() {
pageContext.setAttribute("bean", new MockFormBean());
try {
Object val = tagutils.lookup(pageContext, "bean", "page");
assertNotNull((val));
} catch (JspException e) {
fail("bean not found:" + e.getMessage());
}
}
// lookup with invalid scope
// -- (where an exception is thrown)
public void test_Object_lookup_PageContext_String__String3() {
pageContext.setAttribute("bean", new MockFormBean());
Object val = null;
try {
val = tagutils.lookup(pageContext, "bean", "invalid");
fail("invalid scope :");
} catch (JspException e) {
assertNull((val));
}
}
// try to get the call to throw an IllegalAccessException
public void test_Object_lookup_PageContext_String_String_String1() {
// page.setAttribute("bean", new MockFormBean());
// Object val = null;
// try {
// val = tagutils.lookup(page, "bean", "throwIllegalAccessException");
// fail("should have thrown exception");
// } catch (JspException e) {
// assertNull(val);
// }
}
// try to get the call to throw an IllegalArgumentException
public void test_Object_lookup_PageContext_String_String_String2() {
pageContext.setAttribute("bean", new MockFormBean());
Object val = null;
try {
val = tagutils.lookup(pageContext, "bean", "doesNotExistMethod",
"page");
fail("should have thrown exception");
} catch (JspException e) {
assertNull(val);
}
}
// try to get the call to throw an NoSuchMethodException
public void test_Object_lookup_PageContext_String_String_String3() {
pageContext.setAttribute("bean", new MockFormBean());
Object val = null;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -