1 package com.germinus.merlin.controller.assignments;
2
3
4 import org.springframework.mock.web.portlet.MockActionRequest;
5 import org.springframework.mock.web.portlet.MockActionResponse;
6 import org.springframework.mock.web.portlet.MockRenderRequest;
7 import org.springframework.mock.web.portlet.MockRenderResponse;
8 import org.springframework.web.portlet.ModelAndView;
9 import com.germinus.merlin.controller.BaseControllerTestCase;
10 import com.germinus.merlin.mock.MockMerlinKeys;
11 import com.germinus.merlin.util.MerlinWebKeys;
12
13 public class AssignmentAddControllerTest extends BaseControllerTestCase {
14
15 public AssignmentAddControllerTest() {
16 super();
17 setControllerName("assignmentAddController");
18 setApplicationContextFile("assignments.xml");
19 }
20
21 public void testHandleRenderRequestInternal(){
22
23 try {
24 MockRenderRequest request = mockMerlinFactory.getRenderRequest();
25 MockRenderResponse response = mockMerlinFactory.getRenderResponse();
26
27 AssignmentAddController controller =(AssignmentAddController) loadController();
28
29 request.setRemoteUser(MockMerlinKeys.USER_ID_PROFESOR.toString());
30 request.addParameter("companyId", MockMerlinKeys.COURSE_ID_2.toString());
31
32 request.addParameter("userType", MerlinWebKeys.TEACHER);
33
34 request.setContextPath("assignments/");
35 request.addParameter("type", "Online Activity");
36
37 ModelAndView modelAndView = controller.handleRenderRequest(request, response);
38 String assertMsg= new String ("\n\t<Expected> "+MockMerlinKeys.ADD_ASSIGNMENT_ONLINE+" <Actual> "+modelAndView.getViewName());
39 assertTrue(assertMsg, modelAndView.getViewName().equals(MockMerlinKeys.ADD_ASSIGNMENT_ONLINE));
40
41 request.setParameter("type", "Offline Activity");
42 modelAndView = controller.handleRenderRequest(request, response);
43 assertMsg= new String ("\n\t<Expected> "+MockMerlinKeys.ADD_ASSIGNMENT_OFFLINE+" <Actual> "+modelAndView.getViewName());
44 assertTrue(assertMsg, modelAndView.getViewName().equals(MockMerlinKeys.ADD_ASSIGNMENT_OFFLINE));
45
46 request.setParameter("type", "Upload a Single File");
47 modelAndView = controller.handleRenderRequest(request, response);
48 assertMsg= new String ("\n\t<Expected> "+MockMerlinKeys.ADD_ASSIGNMENT_UPLOAD_SINGLE_FILE+" <Actual> "+modelAndView.getViewName());
49 assertTrue(assertMsg, modelAndView.getViewName().equals(MockMerlinKeys.ADD_ASSIGNMENT_UPLOAD_SINGLE_FILE));
50
51
52 } catch (Exception e) {
53 e.printStackTrace();
54 assertTrue("error: "+e.getMessage(), false);
55 }
56
57 }
58
59 public void testHandleActionRequestInternal(){
60
61 try {
62 MockActionRequest request = mockMerlinFactory.getActionRequest();
63 MockActionResponse response = mockMerlinFactory.getActionResponse();
64
65 AssignmentAddController controller =(AssignmentAddController) loadController();
66
67 request.setRemoteUser(MockMerlinKeys.USER_ID_PROFESOR.toString());
68 request.addParameter("companyId", MockMerlinKeys.COURSE_ID_2.toString());
69 response.addProperty("companyId", MockMerlinKeys.COURSE_ID_2.toString());
70 request.addParameter("userType", MerlinWebKeys.TEACHER);
71 request.addParameter("visible", "true");
72 request.addParameter("resubmit", "true");
73 request.addParameter("emailsToTeacher", "true");
74 request.addParameter("preventLateSubmissions", "true");
75
76 request.setContextPath("assignments/");
77 request.addParameter("type", "Online Activity");
78 request.addParameter("startDate", "01/01/2001");
79 request.addParameter("endDate", "01/01/2001");
80 request.addParameter("hideDescriptionBeforeAvailable", "true");
81
82
83 controller.handleActionRequestInternal(request, response);
84 String fin=response.getRenderParameter("fin");
85
86 String assertMsg= new String ("\n\t<Expected> "+"fin"+" <Actual> "+fin);
87
88 assertTrue(assertMsg, fin.equals("fin"));
89
90
91 } catch (Exception e) {
92 e.printStackTrace();
93 assertTrue("error: "+e.getMessage(), false);
94 }
95 }
96 }