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.ArrayList;
22 import java.util.List;
23
24 import org.apache.maven.surefire.its.fixture.OutputValidator;
25 import org.apache.maven.surefire.its.fixture.SurefireJUnit4IntegrationTestCase;
26 import org.junit.Test;
27 import org.junit.runner.RunWith;
28 import org.junit.runners.Parameterized;
29 import org.junit.runners.Parameterized.Parameter;
30 import org.junit.runners.Parameterized.Parameters;
31
32 import static java.nio.charset.StandardCharsets.UTF_8;
33
34
35
36
37 @RunWith(Parameterized.class)
38 @SuppressWarnings("checkstyle:magicnumber")
39 public class JUnitPlatformIT extends SurefireJUnit4IntegrationTestCase {
40 @Parameter
41 @SuppressWarnings("checkstyle:visibilitymodifier")
42 public String junit5Version;
43
44 @Parameter(1)
45 @SuppressWarnings("checkstyle:visibilitymodifier")
46 public String jqwikVersion;
47
48 @Parameters(name = "{0}")
49 public static Iterable<Object[]> artifactVersions() {
50 List<Object[]> args = new ArrayList<>();
51 args.add(new Object[] {"5.8.2", "1.6.5"});
52 args.add(new Object[] {"5.9.1", "1.7.1"});
53 args.add(new Object[] {"5.10.2", "1.8.5"});
54 args.add(new Object[] {"5.11.4", "1.8.5"});
55 args.add(new Object[] {"5.13.4", "1.8.5"});
56 return args;
57 }
58
59 @Test
60 public void testVintageEngine() {
61 unpack("junit-platform-engine-vintage", "-" + junit5Version + "-" + jqwikVersion)
62 .sysProp("junit5.version", junit5Version)
63 .sysProp("jqwik.version", jqwikVersion)
64 .executeTest()
65 .assertTestSuiteResults(1, 0, 0, 0);
66 }
67
68 @Test
69 public void testJQwikEngine() {
70 unpack("junit-platform-engine-jqwik", "-" + junit5Version + "-" + jqwikVersion)
71 .sysProp("junit5.version", junit5Version)
72 .sysProp("jqwik.version", jqwikVersion)
73 .executeTest()
74 .assertTestSuiteResults(1, 0, 0, 0);
75 }
76
77 @Test
78 public void testMultipleEngines() {
79 OutputValidator validator = unpack("junit-platform-multiple-engines", "-" + junit5Version + "-" + jqwikVersion)
80 .sysProp("junit5.version", junit5Version)
81 .sysProp("jqwik.version", jqwikVersion)
82 .executeTest()
83 .assertTestSuiteResults(7, 0, 0, 0);
84
85 validator
86 .getSurefireReportsFile("TEST-junitplatformenginejupiter.BasicJupiterTest.xml", UTF_8)
87 .assertContainsText("<testcase name=\"test(TestInfo)\" "
88 + "classname=\"junitplatformenginejupiter.BasicJupiterTest\"")
89 .assertContainsText("<testcase name=\"add(int, int, int)[1]\" "
90 + "classname=\"junitplatformenginejupiter.BasicJupiterTest\"")
91 .assertContainsText("<testcase name=\"add(int, int, int)[2]\" "
92 + "classname=\"junitplatformenginejupiter.BasicJupiterTest\"")
93 .assertContainsText("<testcase name=\"add(int, int, int)[3]\" "
94 + "classname=\"junitplatformenginejupiter.BasicJupiterTest\"")
95 .assertContainsText("<testcase name=\"add(int, int, int)[4]\" "
96 + "classname=\"junitplatformenginejupiter.BasicJupiterTest\"");
97 }
98 }