From 6c67c5d7637a203f49c515de98002cb26f8f555c Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Fri, 31 Jul 2020 16:02:14 +0100 Subject: [PATCH] Try to fix Windows-specific CI failures --- ...sourceConfigDataLocationResolverTests.java | 28 +++++++++++-------- ...eMountConfigDataLocationResolverTests.java | 4 ++- .../VolumeMountConfigDataLocationTests.java | 4 ++- ...eChangelogMissingFailureAnalyzerTests.java | 17 ++--------- 4 files changed, 25 insertions(+), 28 deletions(-) diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/ResourceConfigDataLocationResolverTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/ResourceConfigDataLocationResolverTests.java index a1865bb55e3..bfc65bc6735 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/ResourceConfigDataLocationResolverTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/ResourceConfigDataLocationResolverTests.java @@ -16,6 +16,7 @@ package org.springframework.boot.context.config; +import java.io.File; import java.util.Collections; import java.util.List; @@ -80,8 +81,8 @@ public class ResourceConfigDataLocationResolverTests { String location = "file:src/test/resources/configdata/properties/application.properties"; List locations = this.resolver.resolve(this.context, location); assertThat(locations.size()).isEqualTo(1); - assertThat(locations).extracting(Object::toString) - .containsExactly("file [src/test/resources/configdata/properties/application.properties]"); + assertThat(locations).extracting(Object::toString).containsExactly( + filePath("src", "test", "resources", "configdata", "properties", "application.properties")); } @Test @@ -131,9 +132,9 @@ public class ResourceConfigDataLocationResolverTests { List locations = this.resolver.resolve(this.context, location); assertThat(locations.size()).isEqualTo(3); assertThat(locations).extracting(Object::toString) - .contains("file [src/test/resources/config/1-first/testproperties.properties]") - .contains("file [src/test/resources/config/2-second/testproperties.properties]") - .doesNotContain("file [src/test/resources/config/nested/3-third/testproperties.properties]"); + .contains(filePath("src", "test", "resources", "config", "1-first", "testproperties.properties")) + .contains(filePath("src", "test", "resources", "config", "2-second", "testproperties.properties")) + .doesNotContain(filePath("src", "test", "resources", "config", "3-third", "testproperties.properties")); } @Test @@ -143,9 +144,9 @@ public class ResourceConfigDataLocationResolverTests { this.resolver = new ResourceConfigDataLocationResolver(null, this.environmentBinder, this.resourceLoader); List locations = this.resolver.resolve(this.context, location); assertThat(locations).extracting(Object::toString).containsExactly( - "file [src/test/resources/config/0-empty/testproperties.properties]", - "file [src/test/resources/config/1-first/testproperties.properties]", - "file [src/test/resources/config/2-second/testproperties.properties]"); + filePath("src", "test", "resources", "config", "0-empty", "testproperties.properties"), + filePath("src", "test", "resources", "config", "1-first", "testproperties.properties"), + filePath("src", "test", "resources", "config", "2-second", "testproperties.properties")); } @Test @@ -154,9 +155,10 @@ public class ResourceConfigDataLocationResolverTests { List locations = this.resolver.resolve(this.context, location); assertThat(locations.size()).isEqualTo(3); assertThat(locations).extracting(Object::toString) - .contains("file [src/test/resources/config/1-first/testproperties.properties]") - .contains("file [src/test/resources/config/2-second/testproperties.properties]") - .doesNotContain("file [src/test/resources/config/nested/3-third/testproperties.properties]"); + .contains(filePath("src", "test", "resources", "config", "1-first", "testproperties.properties")) + .contains(filePath("src", "test", "resources", "config", "2-second", "testproperties.properties")) + .doesNotContain(filePath("src", "test", "resources", "config", "nested", "3-third", + "testproperties.properties")); } @Test @@ -227,4 +229,8 @@ public class ResourceConfigDataLocationResolverTests { assertThat(locations).isEmpty(); } + private String filePath(String... components) { + return "file [" + String.join(File.separator, components) + "]"; + } + } diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationResolverTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationResolverTests.java index 4483c5683f7..81d9fc00f4f 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationResolverTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationResolverTests.java @@ -16,6 +16,7 @@ package org.springframework.boot.context.config; +import java.io.File; import java.util.List; import org.junit.jupiter.api.Test; @@ -50,7 +51,8 @@ class VolumeMountConfigDataLocationResolverTests { void resolveReturnsConfigVolumeMountLocation() { List locations = this.resolver.resolve(this.context, "volumemount:/etc/config"); assertThat(locations.size()).isEqualTo(1); - assertThat(locations).extracting(Object::toString).containsExactly("volume mount [/etc/config]"); + assertThat(locations).extracting(Object::toString) + .containsExactly("volume mount [" + new File("/etc/config").getAbsolutePath() + "]"); } } diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationTests.java index c8236dd533d..8631e5888ce 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/context/config/VolumeMountConfigDataLocationTests.java @@ -16,6 +16,8 @@ package org.springframework.boot.context.config; +import java.io.File; + import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.assertThat; @@ -52,7 +54,7 @@ public class VolumeMountConfigDataLocationTests { @Test void toStringReturnsDescriptiveString() { VolumeMountConfigDataLocation location = new VolumeMountConfigDataLocation("/etc/config"); - assertThat(location.toString()).isEqualTo("volume mount [/etc/config]"); + assertThat(location.toString()).isEqualTo("volume mount [" + new File("/etc/config").getAbsolutePath() + "]"); } } diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/liquibase/LiquibaseChangelogMissingFailureAnalyzerTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/liquibase/LiquibaseChangelogMissingFailureAnalyzerTests.java index 416351f34f3..abb98d3623f 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/liquibase/LiquibaseChangelogMissingFailureAnalyzerTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/liquibase/LiquibaseChangelogMissingFailureAnalyzerTests.java @@ -16,19 +16,15 @@ package org.springframework.boot.liquibase; -import java.io.File; - import javax.sql.DataSource; import liquibase.integration.spring.SpringLiquibase; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.io.TempDir; import org.springframework.beans.factory.BeanCreationException; import org.springframework.boot.diagnostics.FailureAnalysis; import org.springframework.boot.jdbc.DataSourceBuilder; +import org.springframework.boot.testsupport.classpath.ClassPathExclusions; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -40,18 +36,9 @@ import static org.assertj.core.api.Assertions.assertThat; * * @author Sebastiaan Fernandez */ +@ClassPathExclusions("derby-*") class LiquibaseChangelogMissingFailureAnalyzerTests { - @BeforeAll - static void configureDerbyLogLocation(@TempDir File temp) { - System.setProperty("derby.stream.error.file", new File(temp, "derby.log").getAbsolutePath()); - } - - @AfterAll - static void clearDerbyLogLocation() { - System.clearProperty("derby.stream.error.file"); - } - @Test void changelogParseExceptionDueToChangelogNotPresent() { FailureAnalysis analysis = performAnalysis();