1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.surefire.its;
20
21 import java.util.Collection;
22
23 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
24 import org.apache.maven.surefire.its.fixture.SurefireLauncher;
25 import org.junit.Test;
26 import org.junit.runner.RunWith;
27 import org.junit.runners.Parameterized;
28 import org.junit.runners.Parameterized.Parameter;
29
30 import static java.util.Arrays.asList;
31 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_0;
32 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_1;
33 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_10;
34 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_11;
35 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_12;
36 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_13;
37 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_13_1;
38 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_13_2;
39 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_2;
40 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_3;
41 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_3_1;
42 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_4;
43 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_5;
44 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_6;
45 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_7;
46 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_8;
47 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_8_1;
48 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_8_2;
49 import static org.apache.maven.surefire.its.JUnitVersion.JUNIT_4_9;
50 import static org.junit.runners.Parameterized.Parameters;
51
52
53
54
55
56
57 @RunWith(Parameterized.class)
58 public class JUnit4VersionsIT extends SurefireJUnit4IntegrationTestCase {
59
60 @Parameters(name = "{index}: JUnit {0}")
61 public static Collection<Object[]> junitVersions() {
62 return asList(new Object[][] {
63 {JUNIT_4_0},
64 {JUNIT_4_1},
65 {JUNIT_4_2},
66 {JUNIT_4_3},
67 {JUNIT_4_3_1},
68 {JUNIT_4_4},
69 {JUNIT_4_5},
70 {JUNIT_4_6},
71 {JUNIT_4_7},
72 {JUNIT_4_8},
73 {JUNIT_4_8_1},
74 {JUNIT_4_8_2},
75 {JUNIT_4_9},
76 {JUNIT_4_10},
77 {JUNIT_4_11},
78 {JUNIT_4_12},
79 {JUNIT_4_13},
80 {JUNIT_4_13_1},
81 {JUNIT_4_13_2}
82 });
83 }
84
85 @Parameter
86 @SuppressWarnings("checkstyle:visibilitymodifier")
87 public JUnitVersion version;
88
89 @Test
90 public void testJunit() {
91 version.configure(unpack()).executeTest().verifyErrorFree(1);
92 }
93
94 private SurefireLauncher unpack() {
95 return unpack("/junit4", version.toString());
96 }
97 }