JavaCompilerPluginConfigurationTests Class — spring-boot Architecture
Architecture documentation for the JavaCompilerPluginConfigurationTests class in JavaCompilerPluginConfigurationTests.java from the spring-boot codebase.
Entity Profile
Source Code
build-plugin/spring-boot-maven-plugin/src/test/java/org/springframework/boot/maven/JavaCompilerPluginConfigurationTests.java lines 42–99
class JavaCompilerPluginConfigurationTests {
private MavenProject project;
private Plugin plugin;
@BeforeEach
void setUp() {
this.project = mock(MavenProject.class);
this.plugin = mock(Plugin.class);
given(this.project.getPlugin(anyString())).willReturn(this.plugin);
}
@Test
void versionsAreNullWithNoConfiguration() {
given(this.plugin.getConfiguration()).willReturn(null);
given(this.project.getProperties()).willReturn(new Properties());
JavaCompilerPluginConfiguration configuration = new JavaCompilerPluginConfiguration(this.project);
assertThat(configuration.getSourceMajorVersion()).isNull();
assertThat(configuration.getTargetMajorVersion()).isNull();
assertThat(configuration.getReleaseVersion()).isNull();
}
@Test
void versionsAreReturnedFromConfiguration() throws IOException, XmlPullParserException {
Xpp3Dom dom = buildConfigurationDom("<source>1.9</source>", "<target>11</target>", "<release>12</release>");
given(this.plugin.getConfiguration()).willReturn(dom);
Properties properties = new Properties();
properties.setProperty("maven.compiler.source", "1.8");
properties.setProperty("maven.compiler.target", "10");
properties.setProperty("maven.compiler.release", "11");
given(this.project.getProperties()).willReturn(properties);
JavaCompilerPluginConfiguration configuration = new JavaCompilerPluginConfiguration(this.project);
assertThat(configuration.getSourceMajorVersion()).isEqualTo("9");
assertThat(configuration.getTargetMajorVersion()).isEqualTo("11");
assertThat(configuration.getReleaseVersion()).isEqualTo("12");
}
@Test
void versionsAreReturnedFromProperties() {
given(this.plugin.getConfiguration()).willReturn(null);
Properties properties = new Properties();
properties.setProperty("maven.compiler.source", "1.8");
properties.setProperty("maven.compiler.target", "11");
properties.setProperty("maven.compiler.release", "12");
given(this.project.getProperties()).willReturn(properties);
JavaCompilerPluginConfiguration configuration = new JavaCompilerPluginConfiguration(this.project);
assertThat(configuration.getSourceMajorVersion()).isEqualTo("8");
assertThat(configuration.getTargetMajorVersion()).isEqualTo("11");
assertThat(configuration.getReleaseVersion()).isEqualTo("12");
}
private Xpp3Dom buildConfigurationDom(String... properties) throws IOException, XmlPullParserException {
return Xpp3DomBuilder
.build(new StringReader("<configuration>" + Arrays.toString(properties) + "</configuration>"));
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free