From 4d1fc196de96378a4c16a222d2b0924214011b07 Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Fri, 5 Oct 2018 14:56:07 +0100 Subject: [PATCH] Use Windows-specific custom features so download URI is correct Closes gh-14690 --- .../EmbeddedMongoAutoConfigurationTests.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/mongo/embedded/EmbeddedMongoAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/mongo/embedded/EmbeddedMongoAutoConfigurationTests.java index e61566c74cc..5095823acf4 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/mongo/embedded/EmbeddedMongoAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/mongo/embedded/EmbeddedMongoAutoConfigurationTests.java @@ -17,6 +17,8 @@ package org.springframework.boot.autoconfigure.mongo.embedded; import java.io.File; +import java.util.EnumSet; +import java.util.stream.Collectors; import com.mongodb.MongoClient; import de.flapdoodle.embed.mongo.config.IMongodConfig; @@ -70,10 +72,15 @@ public class EmbeddedMongoAutoConfigurationTests { @Test public void customFeatures() { - load("spring.mongodb.embedded.features=TEXT_SEARCH, SYNC_DELAY, ONLY_WITH_SSL, NO_HTTP_INTERFACE_ARG"); + EnumSet features = EnumSet.of(Feature.TEXT_SEARCH, Feature.SYNC_DELAY, + Feature.ONLY_WITH_SSL, Feature.NO_HTTP_INTERFACE_ARG); + if (isWindows()) { + features.add(Feature.ONLY_WINDOWS_2008_SERVER); + } + load("spring.mongodb.embedded.features=" + String.join(", ", + features.stream().map(Feature::name).collect(Collectors.toList()))); assertThat(this.context.getBean(EmbeddedMongoProperties.class).getFeatures()) - .containsExactly(Feature.TEXT_SEARCH, Feature.SYNC_DELAY, - Feature.ONLY_WITH_SSL, Feature.NO_HTTP_INTERFACE_ARG); + .containsExactlyElementsOf(features); } @Test @@ -193,6 +200,10 @@ public class EmbeddedMongoAutoConfigurationTests { this.context = ctx; } + private boolean isWindows() { + return File.separatorChar == '\\'; + } + @Configuration static class MongoClientConfiguration {