Package com.vst.webapp.action

Source Code of com.vst.webapp.action.QuestionFormControllerTest

package com.vst.webapp.action;

import com.vst.model.Question;
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 QuestionFormControllerTest extends BaseControllerTestCase {
    private QuestionFormController c;
    private MockHttpServletRequest request;
    private ModelAndView mv;

    protected void setUp() throws Exception {
        // needed to initialize a user
        super.setUp();
        c = (QuestionFormController) ctx.getBean("questionFormController");
    }

    protected void tearDown() {
        c = null;
    }

    public void testEdit() throws Exception {
        log.debug("testing edit...");
        request = newGet("/editQuestion.html");
        request.addParameter("questionId", "1");

        mv = c.handleRequest(request, new MockHttpServletResponse());

        assertEquals("questionForm", mv.getViewName());
    }

    public void testSave() throws Exception {
        request = newGet("/editQuestion.html");
        request.addParameter("questionId", "1");

        mv = c.handleRequest(request, new MockHttpServletResponse());

        Question question = (Question) mv.getModel().get(c.getCommandName());
        assertNotNull(question);
        request = newPost("/editQuestion.html");
        super.objectToRequestParameters(question, 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 + "question");

        if (errors != null) {
            log.debug(errors);
        }
        assertNull(errors);
        assertNotNull(request.getSession().getAttribute("successMessages"));       
    }

    public void testRemove() throws Exception {
        request = newPost("/editQuestion.html");
        request.addParameter("delete", "");
        request.addParameter("questionId", "2");
        mv = c.handleRequest(request, new MockHttpServletResponse());
        assertNotNull(request.getSession().getAttribute("successMessages"));
    }
}
TOP

Related Classes of com.vst.webapp.action.QuestionFormControllerTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.