diff --git a/src/main/java/de/flapdoodle/embedmongo/Paths.java b/src/main/java/de/flapdoodle/embedmongo/Paths.java index a544352a218e6f641f74415578f57590c13b0a4c..248662c178a7a06cebd5c17ce443f0dbd4a61e7f 100644 --- a/src/main/java/de/flapdoodle/embedmongo/Paths.java +++ b/src/main/java/de/flapdoodle/embedmongo/Paths.java @@ -20,6 +20,7 @@ import java.util.regex.Pattern; import de.flapdoodle.embedmongo.distribution.ArchiveType; import de.flapdoodle.embedmongo.distribution.Distribution; +import de.flapdoodle.embedmongo.distribution.Version; public class Paths { @@ -65,23 +66,7 @@ public class Paths { } public static String getPath(Distribution distribution) { - String sversion; - switch (distribution.getVersion()) { - case V1_6_5: - sversion="1.6.5"; - break; - case V1_7_6: - sversion="1.7.6"; - break; - case V1_8_0_rc0: - sversion="1.8.0-rc0"; - break; - case V1_8_0: - sversion="1.8.0"; - break; - default: - throw new IllegalArgumentException("Unknown Version "+distribution.getVersion()); - } + String sversion = getVersionPart(distribution.getVersion()); ArchiveType archiveType=getArchiveType(distribution); String sarchiveType; @@ -139,4 +124,34 @@ public class Paths { return splatform+"/mongodb-"+splatform+"-"+sbitSize+"-"+sversion+"."+sarchiveType; } + protected static String getVersionPart(Version version) { + String sversion; + switch (version) { + case V1_6_5: + sversion="1.6.5"; + break; + case V1_7_6: + sversion="1.7.6"; + break; + case V1_8_0_rc0: + sversion="1.8.0-rc0"; + break; + case V1_8_0: + sversion="1.8.0"; + break; + case V1_8_1: + sversion="1.8.1"; + break; + case V1_8_2_rc0: + sversion="1.8.2-rc0"; + break; + case V1_9_0: + sversion="1.9.0"; + break; + default: + throw new IllegalArgumentException("Unknown Version "+version); + } + return sversion; + } + } diff --git a/src/main/java/de/flapdoodle/embedmongo/distribution/Version.java b/src/main/java/de/flapdoodle/embedmongo/distribution/Version.java index 905d73d290e110e33660812d829fed0f814e8991..e4c5d345864e178b221c75bad3bd1b10f6c7b773 100644 --- a/src/main/java/de/flapdoodle/embedmongo/distribution/Version.java +++ b/src/main/java/de/flapdoodle/embedmongo/distribution/Version.java @@ -23,5 +23,9 @@ public enum Version { V1_7_6, @Deprecated V1_8_0_rc0, + @Deprecated V1_8_0, + V1_8_1, + V1_8_2_rc0, + V1_9_0, } diff --git a/src/test/java/de/flapdoodle/embedmongo/MongoDBRuntimeTest.java b/src/test/java/de/flapdoodle/embedmongo/MongoDBRuntimeTest.java index e732266e7146238f97a4f5162c47b0a07d4cce66..af740ec0845387601cf23ac18ec1e7d7bfcb5462 100644 --- a/src/test/java/de/flapdoodle/embedmongo/MongoDBRuntimeTest.java +++ b/src/test/java/de/flapdoodle/embedmongo/MongoDBRuntimeTest.java @@ -48,9 +48,12 @@ public class MongoDBRuntimeTest extends TestCase { public void testDistributions() throws IOException { MongoDBRuntime runtime = MongoDBRuntime.getDefaultInstance(); - check(runtime, new Distribution(Version.V1_8_0,Platform.Linux,BitSize.B32)); - check(runtime, new Distribution(Version.V1_8_0,Platform.Windows,BitSize.B32)); - check(runtime, new Distribution(Version.V1_8_0,Platform.OS_X,BitSize.B32)); + check(runtime, new Distribution(Version.V1_8_1,Platform.Linux,BitSize.B32)); + check(runtime, new Distribution(Version.V1_8_1,Platform.Windows,BitSize.B32)); + check(runtime, new Distribution(Version.V1_8_1,Platform.OS_X,BitSize.B32)); + check(runtime, new Distribution(Version.V1_9_0,Platform.Linux,BitSize.B32)); + check(runtime, new Distribution(Version.V1_9_0,Platform.Windows,BitSize.B32)); + check(runtime, new Distribution(Version.V1_9_0,Platform.OS_X,BitSize.B32)); } private void check(MongoDBRuntime runtime, Distribution distribution) throws IOException { diff --git a/src/test/java/de/flapdoodle/embedmongo/TestPaths.java b/src/test/java/de/flapdoodle/embedmongo/TestPaths.java index 20dddc0ab458835357012d7d716e2263458e3dbd..458f213b15022820a69ae9464fb391a0731e2538 100644 --- a/src/test/java/de/flapdoodle/embedmongo/TestPaths.java +++ b/src/test/java/de/flapdoodle/embedmongo/TestPaths.java @@ -26,17 +26,27 @@ import de.flapdoodle.embedmongo.distribution.Version; public class TestPaths extends TestCase { - public void testPaths() { + public void testDistributionPaths() { checkPath(new Distribution(Version.V1_6_5, Platform.Windows, BitSize.B32), "win32/mongodb-win32-i386-1.6.5.zip"); checkPath(new Distribution(Version.V1_6_5, Platform.Windows, BitSize.B64), "win32/mongodb-win32-x86_64-1.6.5.zip"); checkPath(new Distribution(Version.V1_8_0, Platform.Linux, BitSize.B32), "linux/mongodb-linux-i686-1.8.0.tgz"); checkPath(new Distribution(Version.V1_8_0, Platform.Linux, BitSize.B64), "linux/mongodb-linux-x86_64-1.8.0.tgz"); checkPath(new Distribution(Version.V1_8_0, Platform.OS_X, BitSize.B32), "osx/mongodb-osx-i386-1.8.0.tgz"); checkPath(new Distribution(Version.V1_8_0, Platform.OS_X, BitSize.B64), "osx/mongodb-osx-x86_64-1.8.0.tgz"); + checkPath(new Distribution(Version.V1_8_1, Platform.OS_X, BitSize.B64), "osx/mongodb-osx-x86_64-1.8.1.tgz"); + checkPath(new Distribution(Version.V1_8_2_rc0, Platform.OS_X, BitSize.B64), "osx/mongodb-osx-x86_64-1.8.2-rc0.tgz"); + checkPath(new Distribution(Version.V1_9_0, Platform.OS_X, BitSize.B32), "osx/mongodb-osx-i386-1.9.0.tgz"); + checkPath(new Distribution(Version.V1_9_0, Platform.OS_X, BitSize.B64), "osx/mongodb-osx-x86_64-1.9.0.tgz"); } private void checkPath(Distribution distribution, String match) { assertEquals(""+distribution, match,Paths.getPath(distribution)); } + + public void testPaths() { + for (Version v : Version.values()) { + assertNotNull(""+v,Paths.getVersionPart(v)); + } + } } diff --git a/src/test/java/de/flapdoodle/embedmongo/distribution/DistributionTest.java b/src/test/java/de/flapdoodle/embedmongo/distribution/DistributionTest.java index e1048df72c376d479ea5e011d2e3147c967a5535..b13a99607b186fcbd1edd995c9dcedfd1eac08b7 100644 --- a/src/test/java/de/flapdoodle/embedmongo/distribution/DistributionTest.java +++ b/src/test/java/de/flapdoodle/embedmongo/distribution/DistributionTest.java @@ -27,5 +27,7 @@ public class DistributionTest extends TestCase { public void NOtestDetection() { assertNotNull("Linux32",Distribution.detectFor(Version.V1_6_5)); + assertNotNull("Linux32",Distribution.detectFor(Version.V1_8_1)); + assertNotNull("Linux32",Distribution.detectFor(Version.V1_9_0)); } }