1   package org.seasar.cubby.examples.guice.action;
2   
3   import org.junit.Test;
4   import org.seasar.cubby.action.ActionResult;
5   import org.seasar.cubby.action.Forward;
6   import org.seasar.cubby.examples.guice.ApplicationModule;
7   import org.seasar.cubby.plugins.guice.GuicePlugin;
8   import org.seasar.cubby.unit.CubbyAssert;
9   import org.seasar.cubby.unit.CubbyRunner;
10  import org.springframework.mock.web.MockHttpServletRequest;
11  import org.springframework.mock.web.MockHttpServletResponse;
12  import org.springframework.mock.web.MockServletContext;
13  
14  import com.google.inject.Guice;
15  import com.google.inject.Injector;
16  import com.google.inject.servlet.GuiceFilter;
17  
18  public class HelloActionTest {
19  
20  	@Test
21  	public void index1() throws Exception {
22  		MockServletContext servletContext = new MockServletContext();
23  		Injector injector = Guice.createInjector(new ApplicationModule());
24  		servletContext.setAttribute(Injector.class.getName(), injector);
25  		MockHttpServletRequest request = new MockHttpServletRequest();
26  		request.setMethod("GET");
27  		request.setServletPath("/hello/");
28  		MockHttpServletResponse response = new MockHttpServletResponse();
29  
30  		ActionResult actualResult = CubbyRunner.processAction(servletContext,
31  				request, response, new GuiceFilter());
32  		CubbyAssert.assertPathEquals(Forward.class, "index.jsp", actualResult);
33  	}
34  
35  	@Test
36  	public void message1() throws Exception {
37  		MockServletContext servletContext = new MockServletContext();
38  		Injector injector = Guice.createInjector(new ApplicationModule());
39  		servletContext.setAttribute(Injector.class.getName(), injector);
40  		MockHttpServletRequest request = new MockHttpServletRequest();
41  		request.setMethod("GET");
42  		request.setServletPath("/hello/message");
43  		MockHttpServletResponse response = new MockHttpServletResponse();
44  
45  		ActionResult actualResult = CubbyRunner.processAction(servletContext,
46  				request, response, new GuiceFilter());
47  		CubbyAssert.assertPathEquals(Forward.class, "index.jsp", actualResult);
48  
49  	}
50  
51  	@Test
52  	public void message2() throws Exception {
53  		MockServletContext servletContext = new MockServletContext();
54  		Injector injector = Guice.createInjector(new ApplicationModule());
55  		servletContext.setAttribute(Injector.class.getName(), injector);
56  		MockHttpServletRequest request = new MockHttpServletRequest();
57  		request.setMethod("GET");
58  		request.setServletPath("/hello/message");
59  		request.addParameter("name", "cubby");
60  		MockHttpServletResponse response = new MockHttpServletResponse();
61  
62  		ActionResult actualResult = CubbyRunner.processAction(servletContext,
63  				request, response, new GuiceFilter());
64  		CubbyAssert.assertPathEquals(Forward.class, "hello.jsp", actualResult);
65  	}
66  
67  }