1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package com.mycila.testing.plugin.atunit;
17
18 import atunit.*;
19 import atunit.example.subjects.GuiceUserManager;
20 import atunit.example.subjects.Logger;
21 import atunit.example.subjects.User;
22 import atunit.example.subjects.UserDao;
23 import com.google.inject.Inject;
24 import com.mycila.testing.core.TestSetup;
25 import com.mycila.testing.plugin.atunit.container.GuiceContainer;
26 import com.mycila.testing.plugin.atunit.mocker.JMockFramework;
27 import org.jmock.Expectations;
28 import org.jmock.Mockery;
29 import static org.testng.Assert.*;
30 import org.testng.annotations.BeforeClass;
31 import org.testng.annotations.Test;
32
33
34
35
36 @ContainerClass(GuiceContainer.class)
37 @MockFrameworkClass(JMockFramework.class)
38 public class ExampleGuiceAndJMockTest {
39
40 @Inject
41 @Unit
42 GuiceUserManager manager;
43
44 @Inject
45 User emptyUser;
46
47 Mockery mockery;
48
49 @Mock
50 UserDao dao;
51 @Stub
52 Logger ignoredLogger;
53
54 @BeforeClass
55 public void setup() {
56 TestSetup.setup(this);
57 }
58
59 @Test
60 public void testGetUser() {
61 mockery.checking(new Expectations() {{
62 one(dao).load(with(equal(500)));
63 will(returnValue(emptyUser));
64 }});
65 assertSame(manager.getUser(500), emptyUser);
66 mockery.assertIsSatisfied();
67 }
68 }