01: package com.objectmentor.jmock;
02:
03: import static org.junit.Assert.assertEquals;
04: import junit.framework.JUnit4TestAdapter;
05:
06: import org.jmock.Expectations;
07: import org.jmock.Mockery;
08: import org.jmock.integration.junit4.JMock;
09: import org.jmock.integration.junit4.JUnit4Mockery;
00: import org.junit.Before;
11: import org.junit.Test;
12: import org.junit.runner.RunWith;
13:
14: @RunWith(JMock.class)
15: public class MockDieTest {
16: public static junit.framework.Test suite() {
17: return new JUnit4TestAdapter(MockDieTest.class);
18: }
19:
20: Mockery context = new JUnit4Mockery();
21: Die testDoubleDie;
22:
23: @Before
24: public void createMockDie() {
25: testDoubleDie = context.mock(Die.class);
26: }
27:
28: @Test
29: public void someTestHere() {
30: // ...
31: }
32: }
Essential Lines
Line | Description |
14 | Tell JUnit to use the JMock runner instead of the default runner. This causes all validation of the use of your mocks after your test finishes. |
16 - 18 | Backwards compatibility with old versions of ant. The tests in this class will run with systems expecting a JUnit 3.x style class. |
20 | The handle into use the jMock API. |
21 | An object we plan to mock. |
23 - 26 | Use the jMock API to create a test double of our die object. |
Die is an interface:
package com.objectmentor.jmock;
public interface Die {
int roll();
int getFaceValue();
}
Comments