1 package org.appfuse.webapp.action; 2 3 import org.appfuse.model.User; 4 import org.springframework.mock.web.MockHttpServletRequest; 5 import org.springframework.mock.web.MockHttpServletResponse; 6 import org.springframework.validation.BindException; 7 import org.springframework.validation.Errors; 8 import org.springframework.web.servlet.ModelAndView; 9 10 public class UserFormControllerTest extends BaseControllerTestCase { 11 private UserFormController c; 12 private MockHttpServletRequest request; 13 private ModelAndView mv; 14 15 protected void setUp() throws Exception { 16 super.setUp(); 18 c = (UserFormController) ctx.getBean("userFormController"); 19 } 20 21 protected void tearDown() { 22 c = null; 23 } 24 25 public void testCancel() throws Exception { 26 log.debug("testing cancel..."); 27 request = newPost("/editUser.html"); 28 request.addParameter("cancel", ""); 29 30 mv = c.handleRequest(request, new MockHttpServletResponse()); 31 32 assertEquals("redirect:mainMenu.html", mv.getViewName()); 33 } 34 35 public void testEdit() throws Exception { 36 log.debug("testing edit..."); 37 request = newGet("/editUser.html"); 38 request.addParameter("username", "tomcat"); 39 40 mv = c.handleRequest(request, new MockHttpServletResponse()); 41 42 assertEquals("userForm", mv.getViewName()); 43 User editUser = (User) mv.getModel().get(c.getCommandName()); 44 assertEquals("Tomcat User", editUser.getFullName()); 45 } 46 47 public void testSave() throws Exception { 48 request = newPost("/editUser.html"); 49 user.setConfirmPassword(user.getPassword()); 52 user.setLastName("Updated Last Name"); 53 super.objectToRequestParameters(user, request); 54 55 mv = c.handleRequest(request, new MockHttpServletResponse()); 56 57 log.debug(mv.getModel()); 58 Errors errors = (Errors) mv.getModel().get(BindException.MODEL_KEY_PREFIX + "user"); 59 assertNull(errors); 60 assertNotNull(request.getSession().getAttribute("successMessages")); 61 } 62 63 public void testAddWithMissingFields() throws Exception { 64 request = newPost("/editUser.html"); 65 request.addParameter("firstName", "Julie"); 66 request.setRemoteUser("tomcat"); 67 68 mv = c.handleRequest(request, new MockHttpServletResponse()); 69 70 Errors errors = (Errors) mv.getModel().get(BindException.MODEL_KEY_PREFIX + "user"); 71 assertTrue(errors.getAllErrors().size() == 10); 72 } 73 74 public void testRemove() throws Exception { 75 request = newPost("/editUser.html"); 76 request.addParameter("delete", ""); 77 request.addParameter("id", "2"); 78 79 mv = c.handleRequest(request, new MockHttpServletResponse()); 80 81 assertNotNull(request.getSession().getAttribute("successMessages")); 82 } 83 } 84 | Popular Tags |