1
2
3
4
5
6 package mockit.integration.junit4;
7
8 import static org.junit.jupiter.api.Assertions.assertEquals;
9
10 import mockit.Mock;
11 import mockit.MockUp;
12
13 import org.junit.After;
14 import org.junit.AfterClass;
15 import org.junit.Before;
16 import org.junit.BeforeClass;
17
18 public class BaseJUnit4DecoratorTest {
19 public static final class RealClass0 {
20 public String getValue() {
21 return "REAL0";
22 }
23 }
24
25 public static final class FakeClass0 extends MockUp<RealClass0> {
26 @Mock
27 public String getValue() {
28 return "TEST0";
29 }
30 }
31
32 @BeforeClass
33 public static void beforeClass() {
34 assertEquals("REAL0", new RealClass0().getValue());
35 new FakeClass0();
36 assertEquals("TEST0", new RealClass0().getValue());
37 }
38
39 public static final class RealClass1 {
40 public String getValue() {
41 return "REAL1";
42 }
43 }
44
45 public static final class FakeClass1 extends MockUp<RealClass1> {
46 @Mock
47 public String getValue() {
48 return "TEST1";
49 }
50 }
51
52 @Before
53 public final void beforeBase() {
54 assertEquals("REAL1", new RealClass1().getValue());
55 new FakeClass1();
56 assertEquals("TEST1", new RealClass1().getValue());
57 }
58
59 @After
60 public final void afterBase() {
61 assertEquals("TEST0", new RealClass0().getValue());
62 assertEquals("TEST1", new RealClass1().getValue());
63 }
64
65 @AfterClass
66 public static void afterClass() {
67 assertEquals("TEST0", new RealClass0().getValue());
68 assertEquals("REAL1", new RealClass1().getValue());
69 }
70 }