package com.vst.webapp.action;
import com.vst.model.Strength;
import com.vst.webapp.action.BaseControllerTestCase;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.validation.BindException;
import org.springframework.validation.Errors;
import org.springframework.web.servlet.ModelAndView;
public class StrengthFormControllerTest extends BaseControllerTestCase {
private StrengthFormController c;
private MockHttpServletRequest request;
private ModelAndView mv;
protected void setUp() throws Exception {
// needed to initialize a user
super.setUp();
c = (StrengthFormController) ctx.getBean("strengthFormController");
}
protected void tearDown() {
c = null;
}
public void testEdit() throws Exception {
log.debug("testing edit...");
request = newGet("/editStrength.html");
request.addParameter("pointId", "1");
mv = c.handleRequest(request, new MockHttpServletResponse());
assertEquals("strengthForm", mv.getViewName());
}
public void testSave() throws Exception {
request = newGet("/editStrength.html");
request.addParameter("pointId", "1");
mv = c.handleRequest(request, new MockHttpServletResponse());
Strength strength = (Strength) mv.getModel().get(c.getCommandName());
assertNotNull(strength);
request = newPost("/editStrength.html");
super.objectToRequestParameters(strength, request);
// update the form's fields and add it back to the request
mv = c.handleRequest(request, new MockHttpServletResponse());
Errors errors = (Errors) mv.getModel().get(BindException.MODEL_KEY_PREFIX + "strength");
if (errors != null) {
log.debug(errors);
}
assertNull(errors);
assertNotNull(request.getSession().getAttribute("successMessages"));
}
public void testRemove() throws Exception {
request = newPost("/editStrength.html");
request.addParameter("delete", "");
request.addParameter("pointId", "2");
mv = c.handleRequest(request, new MockHttpServletResponse());
assertNotNull(request.getSession().getAttribute("successMessages"));
}
}