userformcontrollertest.java
来自「springlive ch8」· Java 代码 · 共 73 行
JAVA
73 行
package org.appfuse.web;
import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.appfuse.model.User;
import org.appfuse.service.UserManager;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.mock.web.MockServletContext;
import org.springframework.validation.BindException;
import org.springframework.validation.Errors;
import org.springframework.web.context.support.XmlWebApplicationContext;
import org.springframework.web.servlet.ModelAndView;
public class UserFormControllerTest extends TestCase {
private static Log log = LogFactory.getLog(UserFormControllerTest.class);
private XmlWebApplicationContext ctx = null;
private UserFormController c = null;
private MockHttpServletRequest request = null;
private ModelAndView mv = null;
private User user = null;
protected void setUp() throws Exception {
super.setUp();
String[] paths = {"/WEB-INF/applicationContext*.xml",
"/WEB-INF/action-servlet.xml"};
ctx = new XmlWebApplicationContext();
ctx.setConfigLocations(paths);
ctx.setServletContext(new MockServletContext(""));
ctx.refresh();
c = (UserFormController) ctx.getBean("userFormController");
// add a test user to the database
UserManager mgr = (UserManager) ctx.getBean("userManager");
user = new User();
user.setFirstName("Matt");
user.setLastName("Raible");
user = mgr.saveUser(user);
}
public void testEdit() throws Exception {
log.debug("testing edit...");
request = new MockHttpServletRequest("GET", "/editUser.html");
request.addParameter("id", user.getId().toString());
mv = c.handleRequest(request, new MockHttpServletResponse());
assertEquals("userForm", mv.getViewName());
User editUser = (User) mv.getModel().get(c.getCommandName());
assertEquals(editUser.getFullName(), "Matt Raible");
}
public void testSave() throws Exception {
request = new MockHttpServletRequest("POST", "/editUser.html");
request.addParameter("id", user.getId().toString());
request.addParameter("firstName", user.getFirstName());
request.addParameter("lastName", "Updated Last Name");
mv = c.handleRequest(request, new MockHttpServletResponse());
Errors errors =
(Errors) mv.getModel().get(BindException.ERROR_KEY_PREFIX + "user");
assertNull(errors);
assertNotNull(request.getSession().getAttribute("message"));
}
public void testRemove() throws Exception {
request = new MockHttpServletRequest("POST", "/editUser.html");
request.addParameter("delete", "");
request.addParameter("id", user.getId().toString());
mv = c.handleRequest(request, new MockHttpServletResponse());
assertNotNull(request.getSession().getAttribute("message"));
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?