Skip to content

Commit b9b6669

Browse files
SajeerSajeer
authored andcommitted
Toolchain IT added for devmode
1 parent 70f0d15 commit b9b6669

File tree

1 file changed

+120
-0
lines changed

1 file changed

+120
-0
lines changed
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
package net.wasdev.wlp.test.dev.it;
2+
3+
import static org.junit.Assert.assertTrue;
4+
5+
import org.junit.Test;
6+
7+
public class DevToolchainTest extends BaseDevTest {
8+
9+
@Test
10+
public void libertyToolchainWithoutCompilerToolchainLogsInfoAndUsesToolchainVersion() throws Exception {
11+
setUpBeforeClass(null, "../resources/basic-dev-project", true, false, null, null);
12+
try {
13+
String additionalConfigMarker = "<!-- ADDITIONAL_CONFIGURATION -->";
14+
String additionalConfigReplacement = "<jdkToolchain>\n" +
15+
" <version>11</version>\n" +
16+
" </jdkToolchain>\n" +
17+
" <!-- ADDITIONAL_CONFIGURATION -->";
18+
replaceString(additionalConfigMarker, additionalConfigReplacement, pom);
19+
20+
startProcess(null, true, "mvn -X liberty:");
21+
22+
assertTrue(verifyLogMessageExists("Maven compiler plugin is not configured with a jdkToolchain. Using liberty-maven-plugin jdkToolchain configuration for Java compiler options.", 120000));
23+
assertTrue(verifyLogMessageExists("Setting compiler source to toolchain JDK version 11", 120000));
24+
} finally {
25+
cleanUpAfterClass();
26+
}
27+
}
28+
29+
@Test
30+
public void noToolchainConfigurationDoesNotEmitToolchainMessages() throws Exception {
31+
setUpBeforeClass(null, "../resources/basic-dev-project", true, false, null, null);
32+
try {
33+
startProcess(null, true, "mvn -X liberty:");
34+
35+
assertTrue(verifyLogMessageDoesNotExist(
36+
"Maven compiler plugin is not configured with a jdkToolchain. Using liberty-maven-plugin jdkToolchain configuration for Java compiler options.",
37+
120000));
38+
assertTrue(verifyLogMessageDoesNotExist(
39+
"Liberty Maven Plugin jdkToolchain configuration matches the Maven Compiler Plugin jdkToolchain configuration",
40+
120000));
41+
assertTrue(verifyLogMessageDoesNotExist(
42+
"Liberty Maven Plugin jdkToolchain configuration (version",
43+
120000));
44+
} finally {
45+
cleanUpAfterClass();
46+
}
47+
}
48+
49+
@Test
50+
public void matchingToolchainConfigurationsLogInfoMessage() throws Exception {
51+
setUpBeforeClass(null, "../resources/basic-dev-project", true, false, null, null);
52+
try {
53+
String additionalConfigMarker = "<!-- ADDITIONAL_CONFIGURATION -->";
54+
String additionalConfigReplacement = "<jdkToolchain>\n" +
55+
" <version>11</version>\n" +
56+
" </jdkToolchain>\n" +
57+
" <!-- ADDITIONAL_CONFIGURATION -->";
58+
replaceString(additionalConfigMarker, additionalConfigReplacement, pom);
59+
60+
String pluginsEndMarker = "</plugins>";
61+
String compilerPluginReplacement = "<plugin>\n" +
62+
" <groupId>org.apache.maven.plugins</groupId>\n" +
63+
" <artifactId>maven-compiler-plugin</artifactId>\n" +
64+
" <version>3.11.0</version>\n" +
65+
" <configuration>\n" +
66+
" <jdkToolchain>\n" +
67+
" <version>11</version>\n" +
68+
" </jdkToolchain>\n" +
69+
" <release>11</release>\n" +
70+
" <source>11</source>\n" +
71+
" <target>11</target>\n" +
72+
" </configuration>\n" +
73+
" </plugin>\n" +
74+
" </plugins>";
75+
replaceString(pluginsEndMarker, compilerPluginReplacement, pom);
76+
77+
startProcess(null, true, "mvn -X liberty:");
78+
79+
assertTrue(verifyLogMessageExists("Liberty Maven Plugin jdkToolchain configuration matches the Maven Compiler Plugin jdkToolchain configuration: version 11.", 120000));
80+
} finally {
81+
cleanUpAfterClass();
82+
}
83+
}
84+
85+
@Test
86+
public void mismatchedToolchainConfigurationsLogWarningMessage() throws Exception {
87+
setUpBeforeClass(null, "../resources/basic-dev-project", true, false, null, null);
88+
try {
89+
String additionalConfigMarker = "<!-- ADDITIONAL_CONFIGURATION -->";
90+
String additionalConfigReplacement = "<jdkToolchain>\n" +
91+
" <version>11</version>\n" +
92+
" </jdkToolchain>\n" +
93+
" <!-- ADDITIONAL_CONFIGURATION -->";
94+
replaceString(additionalConfigMarker, additionalConfigReplacement, pom);
95+
96+
String pluginsEndMarker = "</plugins>";
97+
String compilerPluginReplacement = "<plugin>\n" +
98+
" <groupId>org.apache.maven.plugins</groupId>\n" +
99+
" <artifactId>maven-compiler-plugin</artifactId>\n" +
100+
" <version>3.11.0</version>\n" +
101+
" <configuration>\n" +
102+
" <jdkToolchain>\n" +
103+
" <version>8</version>\n" +
104+
" </jdkToolchain>\n" +
105+
" <release>8</release>\n" +
106+
" <source>8</source>\n" +
107+
" <target>8</target>\n" +
108+
" </configuration>\n" +
109+
" </plugin>\n" +
110+
" </plugins>";
111+
replaceString(pluginsEndMarker, compilerPluginReplacement, pom);
112+
113+
startProcess(null, true, "mvn -X liberty:");
114+
115+
assertTrue(verifyLogMessageExists("Liberty Maven Plugin jdkToolchain configuration (version 11) does not match the Maven Compiler Plugin jdkToolchain configuration (version 8). The project-level Maven Compiler Plugin toolchain configuration will be used for compilation.", 120000));
116+
} finally {
117+
cleanUpAfterClass();
118+
}
119+
}
120+
}

0 commit comments

Comments
 (0)