1 package org.appfuse.webapp.action; 2 3 import javax.servlet.http.HttpServletResponse ; 4 5 import org.appfuse.Constants; 6 import org.springframework.mock.web.MockHttpServletRequest; 7 import org.springframework.mock.web.MockHttpServletResponse; 8 import org.springframework.validation.BindException; 9 import org.springframework.validation.Errors; 10 import org.springframework.web.servlet.ModelAndView; 11 12 import com.dumbster.smtp.SimpleSmtpServer; 13 14 15 public class SignupControllerTest extends BaseControllerTestCase { 16 private SignupController c; 17 18 protected void setUp() throws Exception { 19 super.setUp(); 21 c = (SignupController) ctx.getBean("signupController"); 22 } 23 24 protected void tearDown() throws Exception { 25 super.tearDown(); 26 c = null; 27 } 28 29 public void testDisplayForm() throws Exception { 30 MockHttpServletRequest request = newGet("/signup.html"); 31 HttpServletResponse response = new MockHttpServletResponse(); 32 ModelAndView mv = c.handleRequest(request, response); 33 assertTrue("returned correct view name", mv.getViewName().equals("signup")); 34 } 35 36 public void testSignupUser() throws Exception { 37 MockHttpServletRequest request = newPost("/signup.html"); 38 request.addParameter("username", "self-registered"); 39 request.addParameter("password", "Password1"); 40 request.addParameter("confirmPassword", "Password1"); 41 request.addParameter("firstName", "First"); 42 request.addParameter("lastName", "Last"); 43 request.addParameter("address.city", "Denver"); 44 request.addParameter("address.province", "Colorado"); 45 request.addParameter("address.country", "USA"); 46 request.addParameter("address.postalCode", "80210"); 47 request.addParameter("email", "self-registered@raibledesigns.com"); 48 request.addParameter("website", "http://raibledesigns.com"); 49 request.addParameter("passwordHint", "Password is one with you."); 50 51 HttpServletResponse response = new MockHttpServletResponse(); 52 53 SimpleSmtpServer server = SimpleSmtpServer.start(2525); 54 55 ModelAndView mv = c.handleRequest(request, response); 56 Errors errors = 57 (Errors) mv.getModel().get(BindException.MODEL_KEY_PREFIX + "user"); 58 assertTrue("no errors returned in model", errors == null); 59 60 server.stop(); 62 assertTrue(server.getReceivedEmailSize() == 1); 63 64 assertNotNull(request.getSession().getAttribute("successMessages")); 66 assertNotNull(request.getSession().getAttribute(Constants.REGISTERED)); 67 } 68 } 69 | Popular Tags |