diff --git a/src/test/java/org/elasticsearch/VersionTests.java b/src/test/java/org/elasticsearch/VersionTests.java index 7bb957e1d3d..4b5986f3937 100644 --- a/src/test/java/org/elasticsearch/VersionTests.java +++ b/src/test/java/org/elasticsearch/VersionTests.java @@ -44,7 +44,7 @@ public class VersionTests extends ElasticsearchTestCase { // we use here is the version that is actually set to the project.version // in maven String property = System.getProperty("tests.version", null); - assumeNotNull(property); + assumeTrue("tests.version is set", property != null); assertEquals(property, Version.CURRENT.toString()); } diff --git a/src/test/java/org/elasticsearch/indices/stats/IndexStatsTests.java b/src/test/java/org/elasticsearch/indices/stats/IndexStatsTests.java index 9dd277cdd27..7712d949840 100644 --- a/src/test/java/org/elasticsearch/indices/stats/IndexStatsTests.java +++ b/src/test/java/org/elasticsearch/indices/stats/IndexStatsTests.java @@ -540,7 +540,7 @@ public class IndexStatsTests extends ElasticsearchIntegrationTest { assertThat(stats.getTotal().getSegments(), notNullValue()); assertThat(stats.getTotal().getSegments().getCount(), equalTo((long) test1.totalNumShards)); - assumeTrue(org.elasticsearch.Version.CURRENT.luceneVersion != Version.LUCENE_4_6_0); + assumeTrue("test doesn't work with 4.6.0", org.elasticsearch.Version.CURRENT.luceneVersion != Version.LUCENE_4_6_0); assertThat(stats.getTotal().getSegments().getMemoryInBytes(), greaterThan(0l)); } diff --git a/src/test/java/org/elasticsearch/plugins/PluginManagerTests.java b/src/test/java/org/elasticsearch/plugins/PluginManagerTests.java index a7b06cfbc15..fe7dd1fb174 100644 --- a/src/test/java/org/elasticsearch/plugins/PluginManagerTests.java +++ b/src/test/java/org/elasticsearch/plugins/PluginManagerTests.java @@ -422,7 +422,7 @@ public class PluginManagerTests extends ElasticsearchIntegrationTest { @Test @Network public void testInstallPluginWithElasticsearchDownloadService() throws IOException { - assumeTrue(isDownloadServiceWorking("download.elasticsearch.org", 80, "/elasticsearch/ci-test.txt")); + assumeTrue("download.elasticsearch.org is accessible", isDownloadServiceWorking("download.elasticsearch.org", 80, "/elasticsearch/ci-test.txt")); singlePluginInstallAndRemove("elasticsearch/elasticsearch-transport-thrift/2.4.0", null); } @@ -435,8 +435,8 @@ public class PluginManagerTests extends ElasticsearchIntegrationTest { @Test @Network public void testInstallPluginWithMavenCentral() throws IOException { - assumeTrue(isDownloadServiceWorking("search.maven.org", 80, "/")); - assumeTrue(isDownloadServiceWorking("repo1.maven.org", 443, "/maven2/org/elasticsearch/elasticsearch-transport-thrift/2.4.0/elasticsearch-transport-thrift-2.4.0.pom")); + assumeTrue("search.maven.org is accessible", isDownloadServiceWorking("search.maven.org", 80, "/")); + assumeTrue("repo1.maven.org is accessible", isDownloadServiceWorking("repo1.maven.org", 443, "/maven2/org/elasticsearch/elasticsearch-transport-thrift/2.4.0/elasticsearch-transport-thrift-2.4.0.pom")); singlePluginInstallAndRemove("org.elasticsearch/elasticsearch-transport-thrift/2.4.0", null); } @@ -449,7 +449,7 @@ public class PluginManagerTests extends ElasticsearchIntegrationTest { @Test @Network public void testInstallPluginWithGithub() throws IOException { - assumeTrue(isDownloadServiceWorking("github.com", 443, "/")); + assumeTrue("github.com is accessible", isDownloadServiceWorking("github.com", 443, "/")); singlePluginInstallAndRemove("elasticsearch/kibana", null); } diff --git a/src/test/java/org/elasticsearch/test/ElasticsearchIntegrationTest.java b/src/test/java/org/elasticsearch/test/ElasticsearchIntegrationTest.java index ce29d5cbf5d..4083b1502dd 100644 --- a/src/test/java/org/elasticsearch/test/ElasticsearchIntegrationTest.java +++ b/src/test/java/org/elasticsearch/test/ElasticsearchIntegrationTest.java @@ -20,7 +20,9 @@ package org.elasticsearch.test; import com.carrotsearch.randomizedtesting.LifecycleScope; import com.carrotsearch.randomizedtesting.RandomizedContext; +import com.carrotsearch.randomizedtesting.RandomizedTest; import com.carrotsearch.randomizedtesting.Randomness; +import com.carrotsearch.randomizedtesting.SysGlobals; import com.carrotsearch.randomizedtesting.generators.RandomInts; import com.carrotsearch.randomizedtesting.generators.RandomPicks; import com.google.common.base.Joiner; @@ -279,6 +281,11 @@ public abstract class ElasticsearchIntegrationTest extends ElasticsearchTestCase * Default maximum number of shards for an index */ protected static final int DEFAULT_MAX_NUM_SHARDS = 10; + + /** + * The child JVM ordinal of this JVM. Default is 0 + */ + public static final int CHILD_JVM_ID = Integer.parseInt(System.getProperty(SysGlobals.CHILDVM_SYSPROP_JVM_ID, "0")); /** * The current cluster depending on the configured {@link Scope}. @@ -1755,7 +1762,7 @@ public abstract class ElasticsearchIntegrationTest extends ElasticsearchTestCase // It sounds like some Java Time Zones are unknown by JODA. For example: Asia/Riyadh88 // We need to fallback in that case to a known time zone try { - timeZone = DateTimeZone.forTimeZone(randomTimeZone()); + timeZone = DateTimeZone.forTimeZone(RandomizedTest.randomTimeZone()); } catch (IllegalArgumentException e) { timeZone = DateTimeZone.forOffsetHours(randomIntBetween(-12, 12)); } diff --git a/src/test/java/org/elasticsearch/test/ElasticsearchTestCase.java b/src/test/java/org/elasticsearch/test/ElasticsearchTestCase.java index 5fe1b704965..93c9084e2b2 100644 --- a/src/test/java/org/elasticsearch/test/ElasticsearchTestCase.java +++ b/src/test/java/org/elasticsearch/test/ElasticsearchTestCase.java @@ -20,6 +20,7 @@ package org.elasticsearch.test; import com.carrotsearch.randomizedtesting.LifecycleScope; import com.carrotsearch.randomizedtesting.RandomizedContext; +import com.carrotsearch.randomizedtesting.RandomizedTest; import com.carrotsearch.randomizedtesting.SysGlobals; import com.carrotsearch.randomizedtesting.annotations.Listeners; import com.carrotsearch.randomizedtesting.annotations.TestGroup; @@ -66,7 +67,6 @@ import org.elasticsearch.test.store.MockDirectoryHelper; import org.elasticsearch.threadpool.ThreadPool; import org.junit.After; import org.junit.AfterClass; -import org.junit.Assume; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Ignore; @@ -91,7 +91,6 @@ import java.util.Locale; import java.util.Map; import java.util.Random; import java.util.Set; -import java.util.TimeZone; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -174,10 +173,6 @@ public abstract class ElasticsearchTestCase extends LuceneTestCase { // old shit: - /** - * The number of concurrent JVMs used to run the tests, Default is 1 - */ - public static final int CHILD_JVM_COUNT = Integer.parseInt(System.getProperty(SysGlobals.CHILDVM_SYSPROP_JVM_COUNT, "1")); /** * The child JVM ordinal of this JVM. Default is 0 */ @@ -301,40 +296,15 @@ public abstract class ElasticsearchTestCase extends LuceneTestCase { // old helper stuff, a lot of it is bad news and we should see if its all used /** - * Returns a "scaled" random number between min and max (inclusive). The number of - * iterations will fall between [min, max], but the selection will also try to - * achieve the points below: - *
min
to max
(inclusive).
- *
* @see #scaledRandomIntBetween(int, int)
*/
public static int randomIntBetween(int min, int max) {
@@ -376,13 +346,6 @@ public abstract class ElasticsearchTestCase extends LuceneTestCase {
public static double randomDouble() { return getRandom().nextDouble(); }
public static long randomLong() { return getRandom().nextLong(); }
- /**
- * Making {@link Assume#assumeNotNull(Object...)} directly available.
- */
- public static void assumeNotNull(Object... objects) {
- Assume.assumeNotNull(objects);
- }
-
/**
* Pick a random object from the given array. The array must not be empty.
*/
@@ -412,85 +375,64 @@ public abstract class ElasticsearchTestCase extends LuceneTestCase {
* A random integer from 0..max (inclusive).
*/
public static int randomInt(int max) {
- return RandomInts.randomInt(getRandom(), max);
+ return RandomizedTest.randomInt(max);
}
/** @see StringGenerator#ofCodeUnitsLength(Random, int, int) */
public static String randomAsciiOfLengthBetween(int minCodeUnits, int maxCodeUnits) {
- return RandomStrings.randomAsciiOfLengthBetween(getRandom(), minCodeUnits,
- maxCodeUnits);
+ return RandomizedTest.randomAsciiOfLengthBetween(minCodeUnits, maxCodeUnits);
}
/** @see StringGenerator#ofCodeUnitsLength(Random, int, int) */
public static String randomAsciiOfLength(int codeUnits) {
- return RandomStrings.randomAsciiOfLength(getRandom(), codeUnits);
+ return RandomizedTest.randomAsciiOfLength(codeUnits);
}
/** @see StringGenerator#ofCodeUnitsLength(Random, int, int) */
public static String randomUnicodeOfLengthBetween(int minCodeUnits, int maxCodeUnits) {
- return RandomStrings.randomUnicodeOfLengthBetween(getRandom(),
- minCodeUnits, maxCodeUnits);
+ return RandomizedTest.randomUnicodeOfLengthBetween(minCodeUnits, maxCodeUnits);
}
/** @see StringGenerator#ofCodeUnitsLength(Random, int, int) */
public static String randomUnicodeOfLength(int codeUnits) {
- return RandomStrings.randomUnicodeOfLength(getRandom(), codeUnits);
+ return RandomizedTest.randomUnicodeOfLength(codeUnits);
}
/** @see StringGenerator#ofCodePointsLength(Random, int, int) */
public static String randomUnicodeOfCodepointLengthBetween(int minCodePoints, int maxCodePoints) {
- return RandomStrings.randomUnicodeOfCodepointLengthBetween(getRandom(),
- minCodePoints, maxCodePoints);
+ return RandomizedTest.randomUnicodeOfCodepointLengthBetween(minCodePoints, maxCodePoints);
}
/** @see StringGenerator#ofCodePointsLength(Random, int, int) */
public static String randomUnicodeOfCodepointLength(int codePoints) {
- return RandomStrings
- .randomUnicodeOfCodepointLength(getRandom(), codePoints);
+ return RandomizedTest.randomUnicodeOfCodepointLength(codePoints);
}
/** @see StringGenerator#ofCodeUnitsLength(Random, int, int) */
public static String randomRealisticUnicodeOfLengthBetween(int minCodeUnits, int maxCodeUnits) {
- return RandomStrings.randomRealisticUnicodeOfLengthBetween(getRandom(),
- minCodeUnits, maxCodeUnits);
+ return RandomizedTest.randomRealisticUnicodeOfLengthBetween(minCodeUnits, maxCodeUnits);
}
/** @see StringGenerator#ofCodeUnitsLength(Random, int, int) */
public static String randomRealisticUnicodeOfLength(int codeUnits) {
- return RandomStrings.randomRealisticUnicodeOfLength(getRandom(), codeUnits);
+ return RandomizedTest.randomRealisticUnicodeOfLength(codeUnits);
}
/** @see StringGenerator#ofCodePointsLength(Random, int, int) */
- public static String randomRealisticUnicodeOfCodepointLengthBetween(
- int minCodePoints, int maxCodePoints) {
- return RandomStrings.randomRealisticUnicodeOfCodepointLengthBetween(
- getRandom(), minCodePoints, maxCodePoints);
+ public static String randomRealisticUnicodeOfCodepointLengthBetween(int minCodePoints, int maxCodePoints) {
+ return RandomizedTest.randomRealisticUnicodeOfCodepointLengthBetween(minCodePoints, maxCodePoints);
}
/** @see StringGenerator#ofCodePointsLength(Random, int, int) */
public static String randomRealisticUnicodeOfCodepointLength(int codePoints) {
- return RandomStrings.randomRealisticUnicodeOfCodepointLength(getRandom(),
- codePoints);
- }
-
- /**
- * Return a random TimeZone from the available timezones on the system.
- *
- * Warning: This test assumes the returned array of time zones is repeatable from jvm execution - * to jvm execution. It _may_ be different from jvm to jvm and as such, it can render - * tests execute in a different way.
- */ - public static TimeZone randomTimeZone() { - final String[] availableIDs = TimeZone.getAvailableIDs(); - Arrays.sort(availableIDs); - return TimeZone.getTimeZone(randomFrom(availableIDs)); + return RandomizedTest.randomRealisticUnicodeOfCodepointLength(codePoints); } /** * Shortcut for {@link RandomizedContext#current()}. */ public static RandomizedContext getContext() { - return RandomizedContext.current(); + return RandomizedTest.getContext(); } /** @@ -498,30 +440,15 @@ public abstract class ElasticsearchTestCase extends LuceneTestCase { * @see Nightly */ public static boolean isNightly() { - return getContext().isNightly(); + return RandomizedTest.isNightly(); } /** - * Returns a non-negative random value smaller or equalmax
. The value
- * picked is affected by {@link #isNightly()} and {@link #multiplier()}.
- *
- * This method is effectively an alias to: - *
- * scaledRandomIntBetween(0, max) - *- * - * @see #scaledRandomIntBetween(int, int) + * Returns a non-negative random value smaller or equal
max
.
+ * @see RandomizedTest#atMost(int);
*/
public static int atMost(int max) {
- if (max < 0) throw new IllegalArgumentException("atMost requires non-negative argument: " + max);
- return scaledRandomIntBetween(0, max);
- }
-
- /**
- * Making {@link Assume#assumeTrue(boolean)} directly available.
- */
- public void assumeTrue(boolean condition) {
- assumeTrue("caller was too lazy to provide a reason", condition);
+ return RandomizedTest.atMost(max);
}
private static Thread.UncaughtExceptionHandler defaultHandler;