Clover Coverage Report - EasyMock 2.4
Coverage timestamp: mer. juil. 2 2008 02:17:38 CEST
51   133   17   3,4
0   108   0,33   7,5
15     1,13  
2    
 
 
  UsageCallCountTest       Line # 14 51 17 97% 0.969697
  UsageCallCountTest.VoidMethodInterface       Line # 20 0 0 - -1.0
 
  (9)
 
1    /*
2    * Copyright (c) 2001-2008 OFFIS, Tammo Freese.
3    * This program is made available under the terms of the MIT License.
4    */
5    package org.easymock.tests;
6   
7    import static org.junit.Assert.*;
8   
9    import org.easymock.MockControl;
10    import org.junit.Before;
11    import org.junit.Test;
12   
13    @SuppressWarnings("deprecation")
 
14    public class UsageCallCountTest {
15   
16    private MockControl<VoidMethodInterface> control;
17   
18    private VoidMethodInterface mock;
19   
 
20    private interface VoidMethodInterface {
21    void method();
22    }
23   
 
24  9 toggle @Before
25    public void setup() {
26  9 control = MockControl.createControl(VoidMethodInterface.class);
27  9 mock = control.getMock();
28    }
29   
 
30  1 toggle @Test
31    public void mockWithNoExpectedCallsPassesWithNoCalls() {
32  1 control.replay();
33  1 control.verify();
34    }
35   
 
36  1 toggle @Test
37    public void mockWithNoExpectedCallsFailsAtFirstCall() {
38  1 control.replay();
39  1 assertMethodCallFails();
40    }
41   
 
42  1 toggle @Test
43    public void mockWithOneExpectedCallFailsAtVerify() {
44  1 callMethodOnce();
45  1 control.replay();
46  1 assertVerifyFails();
47    }
48   
 
49  1 toggle @Test
50    public void mockWithOneExpectedCallPassesWithOneCall() {
51  1 callMethodOnce();
52  1 control.replay();
53  1 callMethodOnce();
54  1 control.verify();
55    }
56   
 
57  1 toggle @Test
58    public void mockWithOneExpectedCallFailsAtSecondCall() {
59  1 callMethodOnce();
60  1 control.replay();
61  1 callMethodOnce();
62  1 assertMethodCallFails();
63    }
64   
 
65  1 toggle @Test
66    public void tooFewCalls() {
67  1 callMethodThreeTimes();
68  1 control.replay();
69  1 callMethodTwice();
70  1 assertVerifyFails();
71    }
72   
 
73  1 toggle @Test
74    public void correctNumberOfCalls() {
75  1 callMethodThreeTimes();
76  1 control.replay();
77  1 callMethodThreeTimes();
78  1 control.verify();
79    }
80   
 
81  1 toggle @Test
82    public void tooManyCalls() {
83  1 callMethodThreeTimes();
84  1 control.replay();
85  1 callMethodThreeTimes();
86  1 assertMethodCallFails();
87    }
88   
 
89  5 toggle private void callMethodOnce() {
90  5 mock.method();
91    }
92   
 
93  1 toggle private void callMethodTwice() {
94  1 mock.method();
95  1 mock.method();
96    }
97   
 
98  5 toggle private void callMethodThreeTimes() {
99  5 mock.method();
100  5 mock.method();
101  5 mock.method();
102    }
103   
 
104  3 toggle private void assertVerifyFails() {
105  3 try {
106  3 control.verify();
107  0 fail("Expected AssertionError");
108    } catch (AssertionError expected) {
109    }
110    }
111   
 
112  3 toggle private void assertMethodCallFails() {
113  3 try {
114  3 mock.method();
115  0 fail("Expected AssertionError");
116    } catch (AssertionError expected) {
117    }
118    }
119   
 
120  1 toggle @Test
121    public void noUpperLimitWithoutCallCountSet() {
122  1 mock.method();
123  1 control.setVoidCallable(MockControl.ONE_OR_MORE);
124  1 control.replay();
125  1 assertVerifyFails();
126  1 mock.method();
127  1 control.verify();
128  1 mock.method();
129  1 control.verify();
130  1 mock.method();
131  1 control.verify();
132    }
133    }