📄 testactioncontroller.java
字号:
package jodd.servlet;
import java.util.HashMap;
import java.io.*;
import javax.servlet.ServletException;
import junit.framework.TestCase;
public class TestActionController extends TestCase {
protected String dataRoot = "modules/testcase/data";
public void setUp() {
String curDir = System.getProperty("user.dir");
curDir = curDir.replace('\\', '/');
if (curDir.endsWith("/testcase") == true) {
dataRoot = "data";
} else if (curDir.endsWith("/modules") == true) {
dataRoot = "testcase/data";
}
}
public void testXmlParse() {
HashMap dest = new HashMap();
ActionData gad = new ActionData();
try {
ActionControllerUtil.parseFile(dest, gad, dataRoot, "actions.xml");
} catch (ServletException sex) {
fail("xml parse: " + sex.toString());
}
assertEquals(8, dest.size());
// test global forwards
assertEquals("/path1", gad.getForwardPath("gfwd1"));
assertEquals("/path2", gad.getForwardPath("gfwd2"));
assertFalse(gad.isForwardRedirect("gfwd1"));
assertTrue(gad.isForwardRedirect("gfwd2"));
// test actions
ActionData ad = (ActionData) dest.get("/action1");
assertEquals("/action1", ad.getPath());
assertEquals("Foo1", ad.getType());
assertEquals(null, ad.getMethod());
ad = (ActionData) dest.get("/action2");
assertEquals("/action2", ad.getPath());
assertEquals("Foo2", ad.getType());
assertEquals("met2", ad.getMethod());
ad = (ActionData) dest.get("/action3");
assertEquals("/action3", ad.getPath());
assertEquals("Foo3", ad.getType());
assertEquals(null, ad.getMethod());
assertEquals("/path1", ad.getForwardPath("fwd1"));
assertFalse(ad.isForwardRedirect("fwd1"));
assertEquals("/path2", ad.getForwardPath("fwd2"));
assertTrue(ad.isForwardRedirect("fwd2"));
ad = (ActionData) dest.get("/action4");
assertEquals("/action4", ad.getPath());
assertEquals("Foo4", ad.getType());
assertEquals("met4", ad.getMethod());
assertEquals("/path1", ad.getForwardPath("fwd1"));
assertFalse(ad.isForwardRedirect("fwd1"));
assertEquals("/path2", ad.getForwardPath("fwd2"));
assertTrue(ad.isForwardRedirect("fwd2"));
assertEquals("vvv", ad.getParameter("ppp"));
ad = (ActionData) dest.get("/action5");
assertEquals("/action5", ad.getPath());
assertEquals("Foo5", ad.getType());
assertEquals(null, ad.getMethod());
assertEquals("x", ad.getParameter("mparam"));
// test action-mappings
ad = (ActionData) dest.get("/actionA");
assertEquals("/actionA", ad.getPath());
assertEquals("FooJoin", ad.getType());
assertEquals("metjoin", ad.getMethod());
assertEquals("A", ad.getParameter("mparam"));
assertEquals("/path1", ad.getForwardPath("fwd1"));
assertFalse(ad.isForwardRedirect("fwd1"));
assertEquals("/path2", ad.getForwardPath("fwd2"));
assertTrue(ad.isForwardRedirect("fwd2"));
assertEquals("vvv", ad.getParameter("ppp"));
ad = (ActionData) dest.get("/actionB");
assertEquals("/actionB", ad.getPath());
assertEquals("FooJoin", ad.getType());
assertEquals("metjoin", ad.getMethod());
assertEquals("B", ad.getParameter("mparam"));
assertEquals("/path1", ad.getForwardPath("fwd1"));
assertFalse(ad.isForwardRedirect("fwd1"));
assertEquals("/path2", ad.getForwardPath("fwd2"));
assertTrue(ad.isForwardRedirect("fwd2"));
assertEquals("vvv", ad.getParameter("ppp"));
assertEquals("vvvB", ad.getParameter("pppB"));
assertEquals("vvvB2", ad.getParameter("pppB2"));
assertEquals("/pathB", ad.getForwardPath("fwdB"));
assertFalse(ad.isForwardRedirect("fwdB"));
assertEquals("/pathB2", ad.getForwardPath("fwdB2"));
assertFalse(ad.isForwardRedirect("fwdB2"));
ad = (ActionData) dest.get("/actionC");
assertEquals("/actionC", ad.getPath());
assertEquals("FooJoin", ad.getType());
assertEquals("metjoin", ad.getMethod());
assertEquals("C", ad.getParameter("mparam"));
assertEquals("/path1", ad.getForwardPath("fwd1"));
assertFalse(ad.isForwardRedirect("fwd1"));
assertEquals("/path2", ad.getForwardPath("fwd2"));
assertTrue(ad.isForwardRedirect("fwd2"));
assertEquals("vvv", ad.getParameter("ppp"));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -