1 package org.apache.onami.test.guice;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.onami.test.OnamiRunner;
23 import org.apache.onami.test.annotation.GuiceModules;
24 import org.apache.onami.test.annotation.Mock;
25 import org.apache.onami.test.data.HelloWorld;
26 import org.apache.onami.test.data.Service;
27 import org.apache.onami.test.data.ServiceModule;
28 import org.apache.onami.test.data.TelephonService;
29 import org.easymock.EasyMock;
30 import org.junit.Assert;
31 import org.junit.BeforeClass;
32 import org.junit.Test;
33 import org.junit.runner.RunWith;
34
35 import com.google.inject.Inject;
36
37 @RunWith( OnamiRunner.class )
38 @GuiceModules( ServiceModule.class )
39 public class TestCustomInjectionTest
40 {
41
42 @Mock
43 private static Service service;
44
45 @Inject
46 private TelephonService telephonService;
47
48 @Inject
49 private HelloWorld helloWorld;
50
51 @BeforeClass
52 public static void setUp()
53 {
54 Assert.assertNotNull( service );
55
56 }
57
58 @Test
59 public void test()
60 throws Exception
61 {
62 Assert.assertNotNull( service );
63 Assert.assertNotNull( telephonService );
64 Assert.assertNotNull( helloWorld );
65 }
66
67 @Test
68 public void testOverideModule()
69 throws Exception
70 {
71 Assert.assertNotNull( service );
72 Assert.assertNotNull( telephonService );
73 Assert.assertEquals( "It's real class", telephonService.getTelephonNumber() );
74
75 EasyMock.expect( service.go() ).andReturn( "Mocked injected class" );
76 EasyMock.replay( service );
77
78 Assert.assertEquals( "Mocked injected class", helloWorld.sayHalloByService() );
79 EasyMock.verify( service );
80 }
81
82 }