Clover Coverage Report - EasyMock 2.4
Coverage timestamp: mer. juil. 2 2008 02:17:38 CEST
44   106   8   7,33
0   79   0,18   6
6     1,33  
1    
 
 
  UsageRangeTest       Line # 17 44 8 98% 0.98
 
  (5)
 
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 java.util.Iterator;
10   
11    import org.easymock.MockControl;
12    import org.easymock.internal.Range;
13    import org.junit.Before;
14    import org.junit.Test;
15   
16    @SuppressWarnings("deprecation")
 
17    public class UsageRangeTest {
18   
19    private Iterator<String> mock;
20   
21    private MockControl<Iterator<String>> control;
22   
 
23  5 toggle @SuppressWarnings("unchecked")
24    @Before
25    public void setup() {
26  5 control = MockControl.createStrictControl((Class)Iterator.class);
27  5 mock = control.getMock();
28    }
29   
 
30  1 toggle @Test
31    public void zeroOrMoreNoCalls() {
32  1 mock.hasNext();
33  1 control.setReturnValue(false, MockControl.ZERO_OR_MORE);
34  1 control.replay();
35  1 control.verify();
36    }
37   
 
38  1 toggle @Test
39    public void zeroOrMoreOneCall() {
40  1 mock.hasNext();
41  1 control.setReturnValue(false, MockControl.ZERO_OR_MORE);
42  1 control.replay();
43  1 assertFalse(mock.hasNext());
44  1 control.verify();
45    }
46   
 
47  1 toggle @Test
48    public void zeroOrMoreThreeCalls() {
49  1 mock.hasNext();
50  1 control.setReturnValue(false, MockControl.ZERO_OR_MORE);
51  1 control.replay();
52  1 assertFalse(mock.hasNext());
53  1 assertFalse(mock.hasNext());
54  1 assertFalse(mock.hasNext());
55  1 control.verify();
56    }
57   
 
58  1 toggle @Test
59    public void combination() {
60  1 mock.hasNext();
61  1 control.setReturnValue(true, MockControl.ONE_OR_MORE);
62  1 mock.next();
63  1 control.setReturnValue("1");
64   
65  1 mock.hasNext();
66  1 control.setReturnValue(true, MockControl.ONE_OR_MORE);
67  1 mock.next();
68  1 control.setReturnValue("2");
69   
70  1 mock.hasNext();
71  1 control.setReturnValue(false, MockControl.ONE_OR_MORE);
72   
73  1 control.replay();
74   
75  1 assertTrue(mock.hasNext());
76  1 assertTrue(mock.hasNext());
77  1 assertTrue(mock.hasNext());
78   
79  1 assertEquals("1", mock.next());
80   
81  1 try {
82  1 mock.next();
83  0 fail();
84    } catch (AssertionError expected) {
85    }
86   
87  1 assertTrue(mock.hasNext());
88   
89  1 assertEquals("2", mock.next());
90   
91  1 assertFalse(mock.hasNext());
92   
93  1 control.verify();
94   
95    }
96   
 
97  1 toggle @Test
98    public void withIllegalOwnRange() {
99  1 mock.hasNext();
100  1 try {
101  1 control.setReturnValue(true, new Range(2, 7));
102    } catch (IllegalArgumentException e) {
103  1 assertEquals("Unexpected Range", e.getMessage());
104    }
105    }
106    }