From e9ef5bdce83f466b019a59f81186ecee0dd4bd29 Mon Sep 17 00:00:00 2001 From: Alpar Torok Date: Wed, 19 Dec 2018 08:25:20 +0200 Subject: [PATCH] Converting randomized testing to create a separate unitTest task instead of replacing the builtin test task (#36311) - Create a separate unitTest task instead of Gradle's built in - convert all configuration to use the new task - the built in task is now disabled --- benchmarks/build.gradle | 2 +- buildSrc/build.gradle | 4 +- .../junit4/RandomizedTestingPlugin.groovy | 54 ++++--------------- .../elasticsearch/gradle/BuildPlugin.groovy | 14 +++-- .../gradle/test/RestIntegTestTask.groovy | 2 - .../testKit/elasticsearch.build/build.gradle | 2 +- client/benchmark/build.gradle | 2 +- .../build.gradle | 2 +- client/test/build.gradle | 2 +- distribution/bwc/build.gradle | 1 - .../tools/java-version-checker/build.gradle | 2 +- distribution/tools/plugin-cli/build.gradle | 2 +- libs/cli/build.gradle | 2 +- libs/plugin-classloader/build.gradle | 2 +- modules/lang-painless/build.gradle | 2 +- modules/lang-painless/spi/build.gradle | 2 +- modules/reindex/build.gradle | 2 +- modules/transport-netty4/build.gradle | 2 +- plugins/discovery-ec2/build.gradle | 2 +- plugins/discovery-gce/build.gradle | 2 +- .../examples/custom-suggester/build.gradle | 2 +- .../examples/painless-whitelist/build.gradle | 2 +- plugins/examples/rest-handler/build.gradle | 2 +- .../script-expert-scoring/build.gradle | 2 +- plugins/repository-s3/build.gradle | 2 +- qa/die-with-dignity/build.gradle | 2 +- qa/evil-tests/build.gradle | 2 +- qa/full-cluster-restart/build.gradle | 2 +- qa/mixed-cluster/build.gradle | 2 +- qa/multi-cluster-search/build.gradle | 2 +- qa/rolling-upgrade/build.gradle | 2 +- qa/vagrant/build.gradle | 2 +- qa/verify-version-constants/build.gradle | 2 +- qa/wildfly/build.gradle | 2 +- rest-api-spec/build.gradle | 2 +- server/build.gradle | 2 +- test/fixtures/hdfs-fixture/build.gradle | 2 +- test/fixtures/krb5kdc-fixture/build.gradle | 2 +- test/fixtures/old-elasticsearch/build.gradle | 2 +- test/framework/build.gradle | 2 +- x-pack/plugin/ccr/build.gradle | 2 +- x-pack/plugin/ccr/qa/build.gradle | 2 +- .../downgraded-to-basic-license/build.gradle | 2 +- .../plugin/ccr/qa/multi-cluster/build.gradle | 2 +- .../ccr/qa/non-compliant-license/build.gradle | 2 +- x-pack/plugin/ccr/qa/rest/build.gradle | 2 +- x-pack/plugin/ccr/qa/security/build.gradle | 2 +- x-pack/plugin/core/build.gradle | 2 +- x-pack/plugin/ilm/qa/build.gradle | 2 +- x-pack/plugin/ilm/qa/rest/build.gradle | 2 +- x-pack/plugin/ml/build.gradle | 2 +- x-pack/plugin/monitoring/build.gradle | 2 +- x-pack/plugin/security/build.gradle | 2 +- x-pack/plugin/security/cli/build.gradle | 2 +- x-pack/plugin/sql/jdbc/build.gradle | 2 +- x-pack/plugin/sql/qa/build.gradle | 2 +- x-pack/plugin/sql/sql-cli/build.gradle | 2 +- x-pack/plugin/upgrade/build.gradle | 2 +- x-pack/plugin/watcher/build.gradle | 2 +- x-pack/qa/evil-tests/build.gradle | 2 +- x-pack/qa/full-cluster-restart/build.gradle | 6 +-- .../build.gradle | 2 +- x-pack/qa/openldap-tests/build.gradle | 6 +-- x-pack/qa/rolling-upgrade-basic/build.gradle | 2 +- x-pack/qa/rolling-upgrade/build.gradle | 4 +- .../third-party/active-directory/build.gradle | 2 +- x-pack/test/idp-fixture/build.gradle | 2 +- 67 files changed, 87 insertions(+), 122 deletions(-) diff --git a/benchmarks/build.gradle b/benchmarks/build.gradle index a1e4d16a27c6..3002819235a1 100644 --- a/benchmarks/build.gradle +++ b/benchmarks/build.gradle @@ -24,7 +24,7 @@ mainClassName = 'org.openjdk.jmh.Main' assemble.enabled = false archivesBaseName = 'elasticsearch-benchmarks' -test.enabled = false +unitTest.enabled = false dependencies { compile("org.elasticsearch:elasticsearch:${version}") { diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle index 704ebca4d6c9..cd6c97078b8a 100644 --- a/buildSrc/build.gradle +++ b/buildSrc/build.gradle @@ -179,9 +179,7 @@ if (project != rootProject) { jarHell.enabled = false thirdPartyAudit.enabled = false - test { - include "**/*Tests.class" - exclude "**/*IT.class" + unitTest { // The test task is configured to runtimeJava version, but build-tools doesn't support all of them, so test // with compiler instead on the ones that are too old. if (project.runtimeJavaVersion <= JavaVersion.VERSION_1_10) { diff --git a/buildSrc/src/main/groovy/com/carrotsearch/gradle/junit4/RandomizedTestingPlugin.groovy b/buildSrc/src/main/groovy/com/carrotsearch/gradle/junit4/RandomizedTestingPlugin.groovy index 01458f4543db..3b0348b48990 100644 --- a/buildSrc/src/main/groovy/com/carrotsearch/gradle/junit4/RandomizedTestingPlugin.groovy +++ b/buildSrc/src/main/groovy/com/carrotsearch/gradle/junit4/RandomizedTestingPlugin.groovy @@ -4,30 +4,14 @@ import com.carrotsearch.ant.tasks.junit4.JUnit4 import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.api.Task -import org.gradle.api.UnknownTaskException -import org.gradle.api.plugins.JavaBasePlugin import org.gradle.api.tasks.TaskContainer -import org.gradle.api.tasks.TaskProvider -import org.gradle.api.tasks.testing.Test class RandomizedTestingPlugin implements Plugin { void apply(Project project) { setupSeed(project) - replaceTestTask(project.tasks) + createUnitTestTask(project.tasks) configureAnt(project.ant) - configureSanityCheck(project) - } - - private static void configureSanityCheck(Project project) { - // Check the task graph to confirm tasks were indeed replaced - // https://github.com/elastic/elasticsearch/issues/31324 - project.rootProject.getGradle().getTaskGraph().whenReady { - Task test = project.getTasks().findByName("test") - if (test != null && (test instanceof RandomizedTestingTask) == false) { - throw new IllegalStateException("Test task was not replaced in project ${project.path}. Found ${test.getClass()}") - } - } } /** @@ -57,35 +41,15 @@ class RandomizedTestingPlugin implements Plugin { } } - static void replaceTestTask(TaskContainer tasks) { - // Gradle 4.8 introduced lazy tasks, thus we deal both with the `test` task as well as it's provider - // https://github.com/gradle/gradle/issues/5730#issuecomment-398822153 - // since we can't be sure if the task was ever realized, we remove both the provider and the task - TaskProvider oldTestProvider - try { - oldTestProvider = tasks.named('test') - } catch (UnknownTaskException unused) { - // no test task, ok, user will use testing task on their own - return + static void createUnitTestTask(TaskContainer tasks) { + // only create a unitTest task if the `test` task exists as some project don't make use of it. + tasks.matching { it.name == "test" }.all { + // We don't want to run any tests with the Gradle test runner since we add our own randomized runner + it.enabled = false + RandomizedTestingTask unitTest = tasks.create('unitTest', RandomizedTestingTask) + unitTest.description = 'Runs unit tests with the randomized testing framework' + it.dependsOn unitTest } - Test oldTestTask = oldTestProvider.get() - - // we still have to use replace here despite the remove above because the task container knows about the provider - // by the same name - RandomizedTestingTask newTestTask = tasks.replace('test', RandomizedTestingTask) - newTestTask.configure{ - group = JavaBasePlugin.VERIFICATION_GROUP - description = 'Runs unit tests with the randomized testing framework' - dependsOn oldTestTask.dependsOn, 'testClasses' - classpath = oldTestTask.classpath - testClassesDirs = oldTestTask.project.sourceSets.test.output.classesDirs - } - - // hack so check task depends on custom test - Task checkTask = tasks.getByName('check') - checkTask.dependsOn.remove(oldTestProvider) - checkTask.dependsOn.remove(oldTestTask) - checkTask.dependsOn.add(newTestTask) } static void configureAnt(AntBuilder ant) { diff --git a/buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy b/buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy index 5a32586b979f..b82e57bbcfd9 100644 --- a/buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy +++ b/buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy @@ -40,6 +40,7 @@ import org.gradle.api.artifacts.ProjectDependency import org.gradle.api.artifacts.ResolvedArtifact import org.gradle.api.artifacts.dsl.RepositoryHandler import org.gradle.api.execution.TaskExecutionGraph +import org.gradle.api.plugins.JavaBasePlugin import org.gradle.api.plugins.JavaPlugin import org.gradle.api.publish.maven.MavenPublication import org.gradle.api.publish.maven.plugins.MavenPublishPlugin @@ -888,15 +889,22 @@ class BuildPlugin implements Plugin { parallelism System.getProperty('tests.jvms', project.rootProject.ext.defaultParallel) onNonEmptyWorkDirectory 'wipe' leaveTemporary true + project.sourceSets.matching { it.name == "test" }.all { test -> + task.testClassesDirs = test.output.classesDirs + task.classpath = test.runtimeClasspath + } + group = JavaBasePlugin.VERIFICATION_GROUP + dependsOn 'testClasses' // Make sure all test tasks are configured properly if (name != "test") { project.tasks.matching { it.name == "test"}.all { testTask -> - task.testClassesDirs = testTask.testClassesDirs - task.classpath = testTask.classpath task.shouldRunAfter testTask } } + if (name == "unitTest") { + include("**/*Tests.class") + } // TODO: why are we not passing maxmemory to junit4? jvmArg '-Xmx' + System.getProperty('tests.heap.size', '512m') @@ -986,8 +994,6 @@ class BuildPlugin implements Plugin { exclude '**/*$*.class' - dependsOn(project.tasks.testClasses) - project.plugins.withType(ShadowPlugin).whenPluginAdded { // Test against a shadow jar if we made one classpath -= project.tasks.compileJava.outputs.files diff --git a/buildSrc/src/main/groovy/org/elasticsearch/gradle/test/RestIntegTestTask.groovy b/buildSrc/src/main/groovy/org/elasticsearch/gradle/test/RestIntegTestTask.groovy index 193bca321148..218a6c87dbbf 100644 --- a/buildSrc/src/main/groovy/org/elasticsearch/gradle/test/RestIntegTestTask.groovy +++ b/buildSrc/src/main/groovy/org/elasticsearch/gradle/test/RestIntegTestTask.groovy @@ -55,8 +55,6 @@ public class RestIntegTestTask extends DefaultTask { super.dependsOn(runner) clusterInit = project.tasks.create(name: "${name}Cluster#init", dependsOn: project.testClasses) runner.dependsOn(clusterInit) - runner.classpath = project.sourceSets.test.runtimeClasspath - runner.testClassesDirs = project.sourceSets.test.output.classesDirs clusterConfig = project.extensions.create("${name}Cluster", ClusterConfiguration.class, project) // override/add more for rest tests diff --git a/buildSrc/src/testKit/elasticsearch.build/build.gradle b/buildSrc/src/testKit/elasticsearch.build/build.gradle index 8020935f67e8..409367da3146 100644 --- a/buildSrc/src/testKit/elasticsearch.build/build.gradle +++ b/buildSrc/src/testKit/elasticsearch.build/build.gradle @@ -27,7 +27,7 @@ forbiddenApisTest.enabled = false // requires dependency on testing fw jarHell.enabled = false // we don't have tests for now -test.enabled = false +unitTest.enabled = false task hello { doFirst { diff --git a/client/benchmark/build.gradle b/client/benchmark/build.gradle index a53f10203400..f8beeafd14e0 100644 --- a/client/benchmark/build.gradle +++ b/client/benchmark/build.gradle @@ -29,7 +29,7 @@ archivesBaseName = 'client-benchmarks' mainClassName = 'org.elasticsearch.client.benchmark.BenchmarkMain' // never try to invoke tests on the benchmark project - there aren't any -test.enabled = false +unitTest.enabled = false dependencies { compile 'org.apache.commons:commons-math3:3.2' diff --git a/client/client-benchmark-noop-api-plugin/build.gradle b/client/client-benchmark-noop-api-plugin/build.gradle index b5a5fb5dc5ed..6df52237e367 100644 --- a/client/client-benchmark-noop-api-plugin/build.gradle +++ b/client/client-benchmark-noop-api-plugin/build.gradle @@ -36,5 +36,5 @@ dependenciesInfo.enabled = false compileJava.options.compilerArgs << "-Xlint:-cast,-deprecation,-rawtypes,-try,-unchecked" // no unit tests -test.enabled = false +unitTest.enabled = false integTest.enabled = false diff --git a/client/test/build.gradle b/client/test/build.gradle index e66d2be57f1e..e8963b76c5e4 100644 --- a/client/test/build.gradle +++ b/client/test/build.gradle @@ -55,4 +55,4 @@ namingConventions.enabled = false //we aren't releasing this jar thirdPartyAudit.enabled = false -test.enabled = false +unitTest.enabled = false diff --git a/distribution/bwc/build.gradle b/distribution/bwc/build.gradle index 957fc03532af..ec7d84d7a308 100644 --- a/distribution/bwc/build.gradle +++ b/distribution/bwc/build.gradle @@ -39,7 +39,6 @@ bwcVersions.forPreviousUnreleased { VersionCollection.UnreleasedVersionInfo unre apply plugin: 'distribution' // Not published so no need to assemble assemble.enabled = false - assemble.dependsOn.remove('buildBwcVersion') File checkoutDir = file("${buildDir}/bwc/checkout-${bwcBranch}") diff --git a/distribution/tools/java-version-checker/build.gradle b/distribution/tools/java-version-checker/build.gradle index 6d18b79d4bdd..48014a42a4d9 100644 --- a/distribution/tools/java-version-checker/build.gradle +++ b/distribution/tools/java-version-checker/build.gradle @@ -7,7 +7,7 @@ forbiddenApisMain { replaceSignatureFiles 'jdk-signatures' } -test.enabled = false +unitTest.enabled = false namingConventions.enabled = false javadoc.enabled = false loggerUsageCheck.enabled = false diff --git a/distribution/tools/plugin-cli/build.gradle b/distribution/tools/plugin-cli/build.gradle index 38be8db42ff6..34544d724f41 100644 --- a/distribution/tools/plugin-cli/build.gradle +++ b/distribution/tools/plugin-cli/build.gradle @@ -35,7 +35,7 @@ dependencyLicenses { mapping from: /bc.*/, to: 'bouncycastle' } -test { +unitTest { // TODO: find a way to add permissions for the tests in this module systemProperty 'tests.security.manager', 'false' } diff --git a/libs/cli/build.gradle b/libs/cli/build.gradle index b1f3b338255c..0cd1f256c403 100644 --- a/libs/cli/build.gradle +++ b/libs/cli/build.gradle @@ -26,7 +26,7 @@ dependencies { compile "org.elasticsearch:elasticsearch-core:${version}" } -test.enabled = false +unitTest.enabled = false // Since CLI does not depend on :server, it cannot run the jarHell task jarHell.enabled = false diff --git a/libs/plugin-classloader/build.gradle b/libs/plugin-classloader/build.gradle index d6af6600d346..4b3e00467b71 100644 --- a/libs/plugin-classloader/build.gradle +++ b/libs/plugin-classloader/build.gradle @@ -17,7 +17,7 @@ * under the License. */ -test.enabled = false +unitTest.enabled = false // test depend on ES core... forbiddenApisMain.enabled = false diff --git a/modules/lang-painless/build.gradle b/modules/lang-painless/build.gradle index b3cab595201a..c35127e1c91d 100644 --- a/modules/lang-painless/build.gradle +++ b/modules/lang-painless/build.gradle @@ -37,7 +37,7 @@ dependencyLicenses { mapping from: /asm-.*/, to: 'asm' } -test { +unitTest { jvmArg '-XX:-OmitStackTraceInFastThrow' } diff --git a/modules/lang-painless/spi/build.gradle b/modules/lang-painless/spi/build.gradle index 7e43a242a23a..92fd70411f74 100644 --- a/modules/lang-painless/spi/build.gradle +++ b/modules/lang-painless/spi/build.gradle @@ -37,4 +37,4 @@ dependencies { } // no tests...yet? -test.enabled = false +unitTest.enabled = false diff --git a/modules/reindex/build.gradle b/modules/reindex/build.gradle index ae4cf4170499..96b49e0a50c6 100644 --- a/modules/reindex/build.gradle +++ b/modules/reindex/build.gradle @@ -45,7 +45,7 @@ run { setting 'reindex.remote.whitelist', '127.0.0.1:*' } -test { +unitTest { /* * We have to disable setting the number of available processors as tests in the * same JVM randomize processors and will step on each other if we allow them to diff --git a/modules/transport-netty4/build.gradle b/modules/transport-netty4/build.gradle index d84c308294e2..58eda4445c64 100644 --- a/modules/transport-netty4/build.gradle +++ b/modules/transport-netty4/build.gradle @@ -47,7 +47,7 @@ dependencyLicenses { mapping from: /netty-.*/, to: 'netty' } -test { +unitTest { /* * We have to disable setting the number of available processors as tests in the same JVM randomize processors and will step on each * other if we allow them to set the number of available processors as it's set-once in Netty. diff --git a/plugins/discovery-ec2/build.gradle b/plugins/discovery-ec2/build.gradle index b08561ffde0e..96fe8bb3fded 100644 --- a/plugins/discovery-ec2/build.gradle +++ b/plugins/discovery-ec2/build.gradle @@ -64,7 +64,7 @@ task writeTestJavaPolicy { } } -test { +unitTest { dependsOn writeTestJavaPolicy // this is needed for insecure plugins, remove if possible! systemProperty 'tests.artifact', project.name diff --git a/plugins/discovery-gce/build.gradle b/plugins/discovery-gce/build.gradle index bccb496859ac..4d02cff01193 100644 --- a/plugins/discovery-gce/build.gradle +++ b/plugins/discovery-gce/build.gradle @@ -31,7 +31,7 @@ check { dependsOn 'qa:gce:check' } -test { +unitTest { // this is needed for insecure plugins, remove if possible! systemProperty 'tests.artifact', project.name } diff --git a/plugins/examples/custom-suggester/build.gradle b/plugins/examples/custom-suggester/build.gradle index 977e467391d8..7c0d694e1b5f 100644 --- a/plugins/examples/custom-suggester/build.gradle +++ b/plugins/examples/custom-suggester/build.gradle @@ -32,4 +32,4 @@ integTestCluster { } // this plugin has no unit tests, only rest tests -tasks.test.enabled = false +tasks.unitTest.enabled = false diff --git a/plugins/examples/painless-whitelist/build.gradle b/plugins/examples/painless-whitelist/build.gradle index cb2aeb82e9d0..9e42799b4da0 100644 --- a/plugins/examples/painless-whitelist/build.gradle +++ b/plugins/examples/painless-whitelist/build.gradle @@ -35,4 +35,4 @@ if (System.getProperty('tests.distribution') == null) { integTestCluster.distribution = 'oss-zip' } -test.enabled = false +unitTest.enabled = false diff --git a/plugins/examples/rest-handler/build.gradle b/plugins/examples/rest-handler/build.gradle index eff2fd1b6c6e..bae98c247d13 100644 --- a/plugins/examples/rest-handler/build.gradle +++ b/plugins/examples/rest-handler/build.gradle @@ -27,7 +27,7 @@ esplugin { } // No unit tests in this example -test.enabled = false +unitTest.enabled = false task exampleFixture(type: org.elasticsearch.gradle.test.AntFixture) { dependsOn testClasses diff --git a/plugins/examples/script-expert-scoring/build.gradle b/plugins/examples/script-expert-scoring/build.gradle index e9da62acdcff..b054ab47a319 100644 --- a/plugins/examples/script-expert-scoring/build.gradle +++ b/plugins/examples/script-expert-scoring/build.gradle @@ -26,5 +26,5 @@ esplugin { noticeFile rootProject.file('NOTICE.txt') } -test.enabled = false +unitTest.enabled = false diff --git a/plugins/repository-s3/build.gradle b/plugins/repository-s3/build.gradle index e814529e0524..a584ec2767b4 100644 --- a/plugins/repository-s3/build.gradle +++ b/plugins/repository-s3/build.gradle @@ -76,7 +76,7 @@ task testRepositoryCreds(type: RandomizedTestingTask) { } project.check.dependsOn(testRepositoryCreds) -test { +unitTest { // these are tested explicitly in separate test tasks exclude '**/*CredentialsTests.class' exclude '**/S3BlobStoreRepositoryTests.class' diff --git a/qa/die-with-dignity/build.gradle b/qa/die-with-dignity/build.gradle index 49a4d3c50873..26d567ca3ef6 100644 --- a/qa/die-with-dignity/build.gradle +++ b/qa/die-with-dignity/build.gradle @@ -32,6 +32,6 @@ integTestRunner { systemProperty 'runtime.java.home', "${project.runtimeJavaHome}" } -test.enabled = false +unitTest.enabled = false check.dependsOn integTest diff --git a/qa/evil-tests/build.gradle b/qa/evil-tests/build.gradle index 472fc8726160..738b95271be3 100644 --- a/qa/evil-tests/build.gradle +++ b/qa/evil-tests/build.gradle @@ -31,7 +31,7 @@ dependencies { // TODO: give each evil test its own fresh JVM for more isolation. -test { +unitTest { systemProperty 'tests.security.manager', 'false' } diff --git a/qa/full-cluster-restart/build.gradle b/qa/full-cluster-restart/build.gradle index e812af9522b0..4a5f59b6a746 100644 --- a/qa/full-cluster-restart/build.gradle +++ b/qa/full-cluster-restart/build.gradle @@ -93,7 +93,7 @@ for (Version version : bwcVersions.indexCompatible) { } } -test.enabled = false // no unit tests for rolling upgrades, only the rest integration test +unitTest.enabled = false // no unit tests for rolling upgrades, only the rest integration test // basic integ tests includes testing bwc against the most recent version task integTest { diff --git a/qa/mixed-cluster/build.gradle b/qa/mixed-cluster/build.gradle index 62de043b5cca..3de7d4132bbe 100644 --- a/qa/mixed-cluster/build.gradle +++ b/qa/mixed-cluster/build.gradle @@ -60,7 +60,7 @@ for (Version version : bwcVersions.wireCompatible) { } } -test.enabled = false // no unit tests for rolling upgrades, only the rest integration test +unitTest.enabled = false // no unit tests for rolling upgrades, only the rest integration test // basic integ tests includes testing bwc against the most recent version task integTest { diff --git a/qa/multi-cluster-search/build.gradle b/qa/multi-cluster-search/build.gradle index 3012be985bc6..6942331c97c2 100644 --- a/qa/multi-cluster-search/build.gradle +++ b/qa/multi-cluster-search/build.gradle @@ -53,6 +53,6 @@ task integTest { dependsOn = [mixedClusterTest] } -test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test +unitTest.enabled = false // no unit tests for multi-cluster-search, only the rest integration test check.dependsOn(integTest) diff --git a/qa/rolling-upgrade/build.gradle b/qa/rolling-upgrade/build.gradle index 29bcfc166e2f..6894463dd6fa 100644 --- a/qa/rolling-upgrade/build.gradle +++ b/qa/rolling-upgrade/build.gradle @@ -140,7 +140,7 @@ for (Version version : bwcVersions.wireCompatible) { } } -test.enabled = false // no unit tests for rolling upgrades, only the rest integration test +unitTest.enabled = false // no unit tests for rolling upgrades, only the rest integration test // basic integ tests includes testing bwc against the most recent version task integTest { diff --git a/qa/vagrant/build.gradle b/qa/vagrant/build.gradle index 4c3b48cbac94..1f83f431dc3e 100644 --- a/qa/vagrant/build.gradle +++ b/qa/vagrant/build.gradle @@ -71,7 +71,7 @@ forbiddenApisMain { } // we don't have additional tests for the tests themselves -tasks.test.enabled = false +tasks.unitTest.enabled = false // this project doesn't get published tasks.dependencyLicenses.enabled = false diff --git a/qa/verify-version-constants/build.gradle b/qa/verify-version-constants/build.gradle index 46b5df8ae0c0..3160117f7a21 100644 --- a/qa/verify-version-constants/build.gradle +++ b/qa/verify-version-constants/build.gradle @@ -53,7 +53,7 @@ for (Version version : bwcVersions.indexCompatible) { bwcTest.dependsOn(versionBwcTest) } -test.enabled = false +unitTest.enabled = false task integTest { if (project.bwc_tests_enabled) { diff --git a/qa/wildfly/build.gradle b/qa/wildfly/build.gradle index 2e380ce5e30a..0ed4f8c06791 100644 --- a/qa/wildfly/build.gradle +++ b/qa/wildfly/build.gradle @@ -211,7 +211,7 @@ if (!Os.isFamily(Os.FAMILY_WINDOWS)) { check.dependsOn(integTest) -test.enabled = false +unitTest.enabled = false dependencyLicenses.enabled = false dependenciesInfo.enabled = false diff --git a/rest-api-spec/build.gradle b/rest-api-spec/build.gradle index d95ad476682b..915c3a68f6e0 100644 --- a/rest-api-spec/build.gradle +++ b/rest-api-spec/build.gradle @@ -2,5 +2,5 @@ apply plugin: 'elasticsearch.build' apply plugin: 'nebula.maven-base-publish' apply plugin: 'nebula.maven-scm' -test.enabled = false +unitTest.enabled = false jarHell.enabled = false diff --git a/server/build.gradle b/server/build.gradle index 02204fef0fe0..c3a8958f3d8a 100644 --- a/server/build.gradle +++ b/server/build.gradle @@ -322,7 +322,7 @@ if (isEclipse == false || project.path == ":server-tests") { task integTest(type: RandomizedTestingTask, group: JavaBasePlugin.VERIFICATION_GROUP, description: 'Multi-node tests', - dependsOn: test.dependsOn) { + dependsOn: unitTest.dependsOn) { include '**/*IT.class' } check.dependsOn integTest diff --git a/test/fixtures/hdfs-fixture/build.gradle b/test/fixtures/hdfs-fixture/build.gradle index 70cb2b6bed2c..3f08ca7970ca 100644 --- a/test/fixtures/hdfs-fixture/build.gradle +++ b/test/fixtures/hdfs-fixture/build.gradle @@ -39,4 +39,4 @@ task hdfs(type: JavaExec) { // just a test fixture: we aren't using jars in releases thirdPartyAudit.enabled = false // TODO: add a simple HDFS client test for this fixture -test.enabled = false +unitTest.enabled = false diff --git a/test/fixtures/krb5kdc-fixture/build.gradle b/test/fixtures/krb5kdc-fixture/build.gradle index 75175da1b224..685483d53477 100644 --- a/test/fixtures/krb5kdc-fixture/build.gradle +++ b/test/fixtures/krb5kdc-fixture/build.gradle @@ -74,7 +74,7 @@ task destroy(type: org.elasticsearch.gradle.vagrant.VagrantCommandTask) { } thirdPartyAudit.enabled = false -test.enabled = false +unitTest.enabled = false // installKDC uses tabs in it for the Kerberos ACL file. // Ignore it for pattern checking. diff --git a/test/fixtures/old-elasticsearch/build.gradle b/test/fixtures/old-elasticsearch/build.gradle index 5cfc02bbba3c..82948a0b3b05 100644 --- a/test/fixtures/old-elasticsearch/build.gradle +++ b/test/fixtures/old-elasticsearch/build.gradle @@ -24,7 +24,7 @@ a "ports" file with the port on which Elasticsearch is running. """ apply plugin: 'elasticsearch.build' -test.enabled = false +unitTest.enabled = false dependencies { // Just for the constants.... diff --git a/test/framework/build.gradle b/test/framework/build.gradle index fcfd34b88d63..8871c69b87ac 100644 --- a/test/framework/build.gradle +++ b/test/framework/build.gradle @@ -70,7 +70,7 @@ task namingConventionsMain(type: org.elasticsearch.gradle.precommit.NamingConven } precommit.dependsOn namingConventionsMain -test.configure { +unitTest { systemProperty 'tests.gradle_index_compat_versions', bwcVersions.indexCompatible.join(',') systemProperty 'tests.gradle_wire_compat_versions', bwcVersions.wireCompatible.join(',') systemProperty 'tests.gradle_unreleased_versions', bwcVersions.unreleased.join(',') diff --git a/x-pack/plugin/ccr/build.gradle b/x-pack/plugin/ccr/build.gradle index df3466c27884..97a25d1110d8 100644 --- a/x-pack/plugin/ccr/build.gradle +++ b/x-pack/plugin/ccr/build.gradle @@ -23,7 +23,7 @@ compileTestJava.options.compilerArgs << "-Xlint:-try" task internalClusterTest(type: RandomizedTestingTask, group: JavaBasePlugin.VERIFICATION_GROUP, description: 'Java fantasy integration tests', - dependsOn: test.dependsOn) { + dependsOn: unitTest.dependsOn) { include '**/*IT.class' systemProperty 'es.set.netty.runtime.available.processors', 'false' } diff --git a/x-pack/plugin/ccr/qa/build.gradle b/x-pack/plugin/ccr/qa/build.gradle index d3e95d997c3f..a70f1cbd0a73 100644 --- a/x-pack/plugin/ccr/qa/build.gradle +++ b/x-pack/plugin/ccr/qa/build.gradle @@ -1,7 +1,7 @@ import org.elasticsearch.gradle.test.RestIntegTestTask apply plugin: 'elasticsearch.build' -test.enabled = false +unitTest.enabled = false dependencies { compile project(':test:framework') diff --git a/x-pack/plugin/ccr/qa/downgraded-to-basic-license/build.gradle b/x-pack/plugin/ccr/qa/downgraded-to-basic-license/build.gradle index 341b5cda6c93..9147d5251b5b 100644 --- a/x-pack/plugin/ccr/qa/downgraded-to-basic-license/build.gradle +++ b/x-pack/plugin/ccr/qa/downgraded-to-basic-license/build.gradle @@ -59,4 +59,4 @@ followClusterTestRunner { } check.dependsOn followClusterTest -test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test +unitTest.enabled = false // no unit tests for multi-cluster-search, only the rest integration test diff --git a/x-pack/plugin/ccr/qa/multi-cluster/build.gradle b/x-pack/plugin/ccr/qa/multi-cluster/build.gradle index f1ea63269b05..5680eb41f387 100644 --- a/x-pack/plugin/ccr/qa/multi-cluster/build.gradle +++ b/x-pack/plugin/ccr/qa/multi-cluster/build.gradle @@ -61,4 +61,4 @@ followClusterTestRunner { } check.dependsOn followClusterTest -test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test +unitTest.enabled = false // no unit tests for multi-cluster-search, only the rest integration test diff --git a/x-pack/plugin/ccr/qa/non-compliant-license/build.gradle b/x-pack/plugin/ccr/qa/non-compliant-license/build.gradle index f3ac0ffe1513..d3044f760faf 100644 --- a/x-pack/plugin/ccr/qa/non-compliant-license/build.gradle +++ b/x-pack/plugin/ccr/qa/non-compliant-license/build.gradle @@ -38,4 +38,4 @@ followClusterTestRunner { } check.dependsOn followClusterTest -test.enabled = false +unitTest.enabled = false diff --git a/x-pack/plugin/ccr/qa/rest/build.gradle b/x-pack/plugin/ccr/qa/rest/build.gradle index cfd24123f429..c2ca1d499b61 100644 --- a/x-pack/plugin/ccr/qa/rest/build.gradle +++ b/x-pack/plugin/ccr/qa/rest/build.gradle @@ -33,4 +33,4 @@ restTestCluster { } check.dependsOn restTest -test.enabled = false +unitTest.enabled = false diff --git a/x-pack/plugin/ccr/qa/security/build.gradle b/x-pack/plugin/ccr/qa/security/build.gradle index f005a71b1653..af4238c20075 100644 --- a/x-pack/plugin/ccr/qa/security/build.gradle +++ b/x-pack/plugin/ccr/qa/security/build.gradle @@ -73,4 +73,4 @@ followClusterTestRunner { } check.dependsOn followClusterTest -test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test +unitTest.enabled = false // no unit tests for multi-cluster-search, only the rest integration test diff --git a/x-pack/plugin/core/build.gradle b/x-pack/plugin/core/build.gradle index b68fbc1f8c5a..817d994fa8bc 100644 --- a/x-pack/plugin/core/build.gradle +++ b/x-pack/plugin/core/build.gradle @@ -101,7 +101,7 @@ sourceSets.test.java { srcDir '../../license-tools/src/main/java' } -test { +unitTest { /* * We have to disable setting the number of available processors as tests in the same JVM randomize processors and will step on each * other if we allow them to set the number of available processors as it's set-once in Netty. diff --git a/x-pack/plugin/ilm/qa/build.gradle b/x-pack/plugin/ilm/qa/build.gradle index 74412a094b48..f2f60527ec4c 100644 --- a/x-pack/plugin/ilm/qa/build.gradle +++ b/x-pack/plugin/ilm/qa/build.gradle @@ -1,7 +1,7 @@ import org.elasticsearch.gradle.test.RestIntegTestTask apply plugin: 'elasticsearch.build' -test.enabled = false +unitTest.enabled = false dependencies { compile project(':test:framework') diff --git a/x-pack/plugin/ilm/qa/rest/build.gradle b/x-pack/plugin/ilm/qa/rest/build.gradle index 0f1e277e70d2..ff9bf98bce5f 100644 --- a/x-pack/plugin/ilm/qa/rest/build.gradle +++ b/x-pack/plugin/ilm/qa/rest/build.gradle @@ -42,4 +42,4 @@ restTestCluster { } check.dependsOn restTest -test.enabled = false +unitTest.enabled = false diff --git a/x-pack/plugin/ml/build.gradle b/x-pack/plugin/ml/build.gradle index 76f2daa0c5d9..0fe0af236f9a 100644 --- a/x-pack/plugin/ml/build.gradle +++ b/x-pack/plugin/ml/build.gradle @@ -97,7 +97,7 @@ integTest.enabled = false task internalClusterTest(type: RandomizedTestingTask, group: JavaBasePlugin.VERIFICATION_GROUP, description: 'Multi-node tests', - dependsOn: test.dependsOn) { + dependsOn: unitTest.dependsOn) { include '**/*IT.class' systemProperty 'es.set.netty.runtime.available.processors', 'false' } diff --git a/x-pack/plugin/monitoring/build.gradle b/x-pack/plugin/monitoring/build.gradle index 0b86f259303e..cc6ebc8c91cc 100644 --- a/x-pack/plugin/monitoring/build.gradle +++ b/x-pack/plugin/monitoring/build.gradle @@ -59,7 +59,7 @@ integTest.enabled = false task internalClusterTest(type: RandomizedTestingTask, group: JavaBasePlugin.VERIFICATION_GROUP, description: 'Multi-node tests', - dependsOn: test.dependsOn) { + dependsOn: unitTest.dependsOn) { include '**/*IT.class' systemProperty 'es.set.netty.runtime.available.processors', 'false' } diff --git a/x-pack/plugin/security/build.gradle b/x-pack/plugin/security/build.gradle index d935a31b1a50..740cb7f3c3a5 100644 --- a/x-pack/plugin/security/build.gradle +++ b/x-pack/plugin/security/build.gradle @@ -281,7 +281,7 @@ run { plugin xpackModule('core') } -test { +unitTest { /* * We have to disable setting the number of available processors as tests in the same JVM randomize processors and will step on each * other if we allow them to set the number of available processors as it's set-once in Netty. diff --git a/x-pack/plugin/security/cli/build.gradle b/x-pack/plugin/security/cli/build.gradle index 9c76f1758a36..772fed9b2b92 100644 --- a/x-pack/plugin/security/cli/build.gradle +++ b/x-pack/plugin/security/cli/build.gradle @@ -23,7 +23,7 @@ dependencyLicenses { } if (project.inFipsJvm) { - test.enabled = false + tesunitTestt.enabled = false // Forbiden APIs non-portable checks fail because bouncy castle classes being used from the FIPS JDK since those are // not part of the Java specification - all of this is as designed, so we have to relax this check for FIPS. tasks.withType(CheckForbiddenApis) { diff --git a/x-pack/plugin/sql/jdbc/build.gradle b/x-pack/plugin/sql/jdbc/build.gradle index 19c16e553d8f..a077b4ac7ba1 100644 --- a/x-pack/plugin/sql/jdbc/build.gradle +++ b/x-pack/plugin/sql/jdbc/build.gradle @@ -36,7 +36,7 @@ dependencyLicenses { ignoreSha 'elasticsearch' } -test { +unitTest { // don't use the shaded jar for tests classpath += project.tasks.compileJava.outputs.files classpath -= project.tasks.shadowJar.outputs.files diff --git a/x-pack/plugin/sql/qa/build.gradle b/x-pack/plugin/sql/qa/build.gradle index 6b55b6363f2c..8b27119cc7e4 100644 --- a/x-pack/plugin/sql/qa/build.gradle +++ b/x-pack/plugin/sql/qa/build.gradle @@ -21,7 +21,7 @@ dependencies { /* disable unit tests because these are all integration tests used * other qa projects. */ -test.enabled = false +unitTest.enabled = false dependencyLicenses.enabled = false dependenciesInfo.enabled = false diff --git a/x-pack/plugin/sql/sql-cli/build.gradle b/x-pack/plugin/sql/sql-cli/build.gradle index cb5057e945ac..dbeeda5ee2d3 100644 --- a/x-pack/plugin/sql/sql-cli/build.gradle +++ b/x-pack/plugin/sql/sql-cli/build.gradle @@ -132,7 +132,7 @@ task runcli { } // Use the jar for testing so we can get the proper version information -test { +unitTest { classpath -= compileJava.outputs.files classpath -= configurations.compile classpath -= configurations.runtime diff --git a/x-pack/plugin/upgrade/build.gradle b/x-pack/plugin/upgrade/build.gradle index 3ba8f30f8748..25a39168dbc0 100644 --- a/x-pack/plugin/upgrade/build.gradle +++ b/x-pack/plugin/upgrade/build.gradle @@ -32,7 +32,7 @@ integTest.enabled = false task internalClusterTest(type: RandomizedTestingTask, group: JavaBasePlugin.VERIFICATION_GROUP, description: 'Multi-node tests', - dependsOn: test.dependsOn) { + dependsOn: unitTest.dependsOn) { include '**/*IT.class' systemProperty 'es.set.netty.runtime.available.processors', 'false' } diff --git a/x-pack/plugin/watcher/build.gradle b/x-pack/plugin/watcher/build.gradle index 6f3497df8fcb..3d764e5db3e3 100644 --- a/x-pack/plugin/watcher/build.gradle +++ b/x-pack/plugin/watcher/build.gradle @@ -103,7 +103,7 @@ run { plugin xpackModule('core') } -test { +unitTest { /* * We have to disable setting the number of available processors as tests in the same JVM randomize processors and will step on each * other if we allow them to set the number of available processors as it's set-once in Netty. diff --git a/x-pack/qa/evil-tests/build.gradle b/x-pack/qa/evil-tests/build.gradle index d411909fb310..ad32645b3647 100644 --- a/x-pack/qa/evil-tests/build.gradle +++ b/x-pack/qa/evil-tests/build.gradle @@ -5,7 +5,7 @@ dependencies { testCompile project(path: xpackModule('security'), configuration: 'testArtifacts') } -test { +unitTest { systemProperty 'tests.security.manager', 'false' include '**/*Tests.class' } diff --git a/x-pack/qa/full-cluster-restart/build.gradle b/x-pack/qa/full-cluster-restart/build.gradle index c9bbce070195..bf2d556c4afb 100644 --- a/x-pack/qa/full-cluster-restart/build.gradle +++ b/x-pack/qa/full-cluster-restart/build.gradle @@ -8,7 +8,7 @@ import java.util.regex.Matcher // Apply the java plugin to this project so the sources can be edited in an IDE apply plugin: 'elasticsearch.build' -test.enabled = false +unitTest.enabled = false dependencies { // "org.elasticsearch.plugin:x-pack-core:${version}" doesn't work with idea because the testArtifacts are also here @@ -243,8 +243,8 @@ subprojects { bwcTest.dependsOn(versionBwcTest) } } - - test.enabled = false // no unit tests for full cluster restarts, only the rest integration test + + unitTest.enabled = false // no unit tests for full cluster restarts, only the rest integration test // basic integ tests includes testing bwc against the most recent version task integTest { diff --git a/x-pack/qa/multi-cluster-search-security/build.gradle b/x-pack/qa/multi-cluster-search-security/build.gradle index c31b2c0ad1d5..63265b6949f1 100644 --- a/x-pack/qa/multi-cluster-search-security/build.gradle +++ b/x-pack/qa/multi-cluster-search-security/build.gradle @@ -75,5 +75,5 @@ task integTest { dependsOn = [mixedClusterTest] } -test.enabled = false // no unit tests for multi-cluster-search, only the rest integration test +unitTest.enabled = false // no unit tests for multi-cluster-search, only the rest integration test check.dependsOn(integTest) diff --git a/x-pack/qa/openldap-tests/build.gradle b/x-pack/qa/openldap-tests/build.gradle index 9e4c7ec2cebf..8c87f7e61640 100644 --- a/x-pack/qa/openldap-tests/build.gradle +++ b/x-pack/qa/openldap-tests/build.gradle @@ -23,10 +23,10 @@ task copyIdpTrust(type: Copy) { } if (project.rootProject.vagrantSupported) { project.sourceSets.test.output.dir(outputDir, builtBy: copyIdpTrust) - test.dependsOn openLdapFixture - test.finalizedBy idpFixtureProject.halt + unitTest.dependsOn openLdapFixture + unitTest.finalizedBy idpFixtureProject.halt } else { - test.enabled = false + unitTest.enabled = false testingConventions.enabled = false } diff --git a/x-pack/qa/rolling-upgrade-basic/build.gradle b/x-pack/qa/rolling-upgrade-basic/build.gradle index 96f03f55dc6c..7ede2424f078 100644 --- a/x-pack/qa/rolling-upgrade-basic/build.gradle +++ b/x-pack/qa/rolling-upgrade-basic/build.gradle @@ -122,7 +122,7 @@ for (Version version : bwcVersions.wireCompatible) { } } -test.enabled = false // no unit tests for rolling upgrades, only the rest integration test +unitTest.enabled = false // no unit tests for rolling upgrades, only the rest integration test // basic integ tests includes testing bwc against the most recent version task integTest { diff --git a/x-pack/qa/rolling-upgrade/build.gradle b/x-pack/qa/rolling-upgrade/build.gradle index 68174a3cf950..f59dd6bc3e45 100644 --- a/x-pack/qa/rolling-upgrade/build.gradle +++ b/x-pack/qa/rolling-upgrade/build.gradle @@ -7,7 +7,7 @@ import java.util.regex.Matcher // Apply the java plugin to this project so the sources can be edited in an IDE apply plugin: 'elasticsearch.build' -test.enabled = false +unitTest.enabled = false dependencies { // "org.elasticsearch.plugin:x-pack-core:${version}" doesn't work with idea because the testArtifacts are also here @@ -327,7 +327,7 @@ subprojects { } } - test.enabled = false // no unit tests for rolling upgrades, only the rest integration test + unitTest.enabled = false // no unit tests for rolling upgrades, only the rest integration test // basic integ tests includes testing bwc against the most recent version task integTest { diff --git a/x-pack/qa/third-party/active-directory/build.gradle b/x-pack/qa/third-party/active-directory/build.gradle index 6ce8541fc431..e33c0fa6d69f 100644 --- a/x-pack/qa/third-party/active-directory/build.gradle +++ b/x-pack/qa/third-party/active-directory/build.gradle @@ -19,7 +19,7 @@ forbiddenPatterns { exclude '**/*.der' } -test { +unitTest { /* * We have to disable setting the number of available processors as tests in the same JVM randomize processors and will step on each * other if we allow them to set the number of available processors as it's set-once in Netty. diff --git a/x-pack/test/idp-fixture/build.gradle b/x-pack/test/idp-fixture/build.gradle index 305b1914a1b4..e7fbfc3779ae 100644 --- a/x-pack/test/idp-fixture/build.gradle +++ b/x-pack/test/idp-fixture/build.gradle @@ -38,5 +38,5 @@ task destroy(type: org.elasticsearch.gradle.vagrant.VagrantCommandTask) { } thirdPartyAudit.enabled = false -test.enabled = false +unitTest.enabled = false jarHell.enabled = false