From cd4446732e53a3d427b36bf765d3be3f62ae8e2d Mon Sep 17 00:00:00 2001 From: Rory Hunter Date: Wed, 21 Jul 2021 13:47:50 +0100 Subject: [PATCH] Re-enable compiler warnings in :test:framework (#75449) Part of #40366. --- test/framework/build.gradle | 4 +--- .../ESIndexLevelReplicationTestCase.java | 1 + .../elasticsearch/ingest/TestTemplateService.java | 1 + .../search/aggregations/AggregatorTestCase.java | 1 + .../snapshots/AbstractSnapshotIntegTestCase.java | 1 + .../java/org/elasticsearch/test/ESTestCase.java | 2 ++ .../test/InternalAggregationTestCase.java | 1 + .../test/disruption/NetworkDisruption.java | 1 + .../org/elasticsearch/test/rest/ESRestTestCase.java | 13 +++++++------ .../test/rest/yaml/section/ContainsAssertion.java | 1 + .../rest/yaml/section/GreaterThanAssertion.java | 1 + .../yaml/section/GreaterThanEqualToAssertion.java | 1 + .../test/rest/yaml/section/LessThanAssertion.java | 1 + .../yaml/section/LessThanOrEqualToAssertion.java | 1 + 14 files changed, 21 insertions(+), 9 deletions(-) diff --git a/test/framework/build.gradle b/test/framework/build.gradle index 3008cae3c32c6..8cffff69c62f1 100644 --- a/test/framework/build.gradle +++ b/test/framework/build.gradle @@ -37,8 +37,6 @@ dependencies { api "org.apache.commons:commons-lang3:${versions.commons_lang3}" } -tasks.named("compileJava").configure { options.compilerArgs << '-Xlint:-cast,-unchecked' } - // the main files are actually test files, so use the appropriate forbidden api sigs tasks.named('forbiddenApisMain').configure { replaceSignatureFiles 'jdk-signatures', 'es-all-signatures', 'es-test-signatures' @@ -110,6 +108,6 @@ tasks.register("verifyVersions") { } tasks.named('splitPackagesAudit').configure { - // for now we always run tests with the classpath, so we are ok with split packages for tests + // for now we always run tests with the classpath, so we are ok with split packages for tests onlyIf { false } } diff --git a/test/framework/src/main/java/org/elasticsearch/index/replication/ESIndexLevelReplicationTestCase.java b/test/framework/src/main/java/org/elasticsearch/index/replication/ESIndexLevelReplicationTestCase.java index 127cfa7443352..66374c160ad1c 100644 --- a/test/framework/src/main/java/org/elasticsearch/index/replication/ESIndexLevelReplicationTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/index/replication/ESIndexLevelReplicationTestCase.java @@ -478,6 +478,7 @@ public synchronized void close() throws Exception { } @Override + @SuppressWarnings("unchecked") public Iterator iterator() { return Iterators.concat(replicas.iterator(), Collections.singleton(primary).iterator()); } diff --git a/test/framework/src/main/java/org/elasticsearch/ingest/TestTemplateService.java b/test/framework/src/main/java/org/elasticsearch/ingest/TestTemplateService.java index 5a07ad57e82c6..5093828384a54 100644 --- a/test/framework/src/main/java/org/elasticsearch/ingest/TestTemplateService.java +++ b/test/framework/src/main/java/org/elasticsearch/ingest/TestTemplateService.java @@ -37,6 +37,7 @@ private TestTemplateService(boolean compilationException) { } @Override + @SuppressWarnings("unchecked") public FactoryType compile(Script script, ScriptContext context) { if (this.compilationException) { throw new RuntimeException("could not compile script"); diff --git a/test/framework/src/main/java/org/elasticsearch/search/aggregations/AggregatorTestCase.java b/test/framework/src/main/java/org/elasticsearch/search/aggregations/AggregatorTestCase.java index 1815383dcd932..cf1bef5e432b3 100644 --- a/test/framework/src/main/java/org/elasticsearch/search/aggregations/AggregatorTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/search/aggregations/AggregatorTestCase.java @@ -435,6 +435,7 @@ protected A searchAndReduc * for each leaf as though it were a separate index. If false this aggregates * all leaves together, like we do in production. */ + @SuppressWarnings("unchecked") protected A searchAndReduce(IndexSettings indexSettings, IndexSearcher searcher, Query query, diff --git a/test/framework/src/main/java/org/elasticsearch/snapshots/AbstractSnapshotIntegTestCase.java b/test/framework/src/main/java/org/elasticsearch/snapshots/AbstractSnapshotIntegTestCase.java index cade54d147130..2380f59bd3eae 100644 --- a/test/framework/src/main/java/org/elasticsearch/snapshots/AbstractSnapshotIntegTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/snapshots/AbstractSnapshotIntegTestCase.java @@ -163,6 +163,7 @@ protected RepositoryData getRepositoryData(String repoName, Version version) { } } + @SuppressWarnings("cast") protected RepositoryData getRepositoryData(String repository) { return getRepositoryData((Repository) getRepositoryOnMaster(repository)); } diff --git a/test/framework/src/main/java/org/elasticsearch/test/ESTestCase.java b/test/framework/src/main/java/org/elasticsearch/test/ESTestCase.java index cce6925f988ae..667bff840c617 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/ESTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/test/ESTestCase.java @@ -1091,6 +1091,8 @@ public static Settings.Builder settings(Version version) { /** * Returns size random values */ + @SafeVarargs + @SuppressWarnings("varargs") public static List randomSubsetOf(int size, T... values) { List list = arrayAsArrayList(values); return randomSubsetOf(size, list); diff --git a/test/framework/src/main/java/org/elasticsearch/test/InternalAggregationTestCase.java b/test/framework/src/main/java/org/elasticsearch/test/InternalAggregationTestCase.java index da89f66544183..da00ac50e4eb7 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/InternalAggregationTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/test/InternalAggregationTestCase.java @@ -322,6 +322,7 @@ protected T createUnmappedInstance(String name, Map metadata) { } @Override + @SuppressWarnings("unchecked") protected final Class categoryClass() { return (Class) InternalAggregation.class; } diff --git a/test/framework/src/main/java/org/elasticsearch/test/disruption/NetworkDisruption.java b/test/framework/src/main/java/org/elasticsearch/test/disruption/NetworkDisruption.java index a13470115516f..570c1a51ecd8d 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/disruption/NetworkDisruption.java +++ b/test/framework/src/main/java/org/elasticsearch/test/disruption/NetworkDisruption.java @@ -181,6 +181,7 @@ public String toString() { public abstract static class DisruptedLinks { private final Set nodes; + @SafeVarargs protected DisruptedLinks(Set... nodeSets) { Set allNodes = new HashSet<>(); for (Set nodeSet : nodeSets) { diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java b/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java index ae5057787ad41..911dc0a1e58ca 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java @@ -33,15 +33,10 @@ import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestClientBuilder; import org.elasticsearch.client.WarningsHandler; -import org.elasticsearch.core.CharArrays; -import org.elasticsearch.core.CheckedRunnable; -import org.elasticsearch.core.Nullable; import org.elasticsearch.common.Strings; -import org.elasticsearch.core.PathUtils; import org.elasticsearch.common.settings.SecureString; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.ssl.PemUtils; -import org.elasticsearch.core.TimeValue; import org.elasticsearch.common.util.concurrent.ThreadContext; import org.elasticsearch.common.util.set.Sets; import org.elasticsearch.common.xcontent.DeprecationHandler; @@ -52,6 +47,11 @@ import org.elasticsearch.common.xcontent.XContentType; import org.elasticsearch.common.xcontent.json.JsonXContent; import org.elasticsearch.common.xcontent.support.XContentMapValues; +import org.elasticsearch.core.CharArrays; +import org.elasticsearch.core.CheckedRunnable; +import org.elasticsearch.core.Nullable; +import org.elasticsearch.core.PathUtils; +import org.elasticsearch.core.TimeValue; import org.elasticsearch.core.internal.io.IOUtils; import org.elasticsearch.index.IndexSettings; import org.elasticsearch.index.seqno.ReplicationTracker; @@ -64,7 +64,6 @@ import org.junit.AfterClass; import org.junit.Before; -import javax.net.ssl.SSLContext; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; @@ -97,6 +96,7 @@ import java.util.function.Predicate; import java.util.regex.Pattern; import java.util.stream.Collectors; +import javax.net.ssl.SSLContext; import static java.util.Collections.sort; import static java.util.Collections.unmodifiableList; @@ -1010,6 +1010,7 @@ private static void deleteAllSLMPolicies() throws IOException { } } + @SuppressWarnings("unchecked") private static void deleteAllAutoFollowPatterns() throws IOException { final List> patterns; diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/ContainsAssertion.java b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/ContainsAssertion.java index 3d3b463f5cfce..9cbda4707b242 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/ContainsAssertion.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/ContainsAssertion.java @@ -39,6 +39,7 @@ public ContainsAssertion(XContentLocation location, String field, Object expecte } @Override + @SuppressWarnings("unchecked") protected void doAssert(Object actualValue, Object expectedValue) { // add support for matching objects ({a:b}) against list of objects ([ {a:b, c:d} ]) if(expectedValue instanceof Map && actualValue instanceof List) { diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanAssertion.java b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanAssertion.java index d2eed66244c8b..5f2b6647ba995 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanAssertion.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanAssertion.java @@ -42,6 +42,7 @@ public GreaterThanAssertion(XContentLocation location, String field, Object expe } @Override + @SuppressWarnings({"rawtypes", "unchecked"}) protected void doAssert(Object actualValue, Object expectedValue) { logger.trace("assert that [{}] is greater than [{}] (field: [{}])", actualValue, expectedValue, getField()); assertThat("value of [" + getField() + "] is not comparable (got [" + safeClass(actualValue) + "])", diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanEqualToAssertion.java b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanEqualToAssertion.java index 85265737abeac..2402b224bb17e 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanEqualToAssertion.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/GreaterThanEqualToAssertion.java @@ -43,6 +43,7 @@ public GreaterThanEqualToAssertion(XContentLocation location, String field, Obje } @Override + @SuppressWarnings({"rawtypes", "unchecked"}) protected void doAssert(Object actualValue, Object expectedValue) { logger.trace("assert that [{}] is greater than or equal to [{}] (field: [{}])", actualValue, expectedValue, getField()); assertThat("value of [" + getField() + "] is not comparable (got [" + safeClass(actualValue) + "])", diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanAssertion.java b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanAssertion.java index 1653ca4806ed0..0e0f792aa8331 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanAssertion.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanAssertion.java @@ -43,6 +43,7 @@ public LessThanAssertion(XContentLocation location, String field, Object expecte } @Override + @SuppressWarnings({"rawtypes", "unchecked"}) protected void doAssert(Object actualValue, Object expectedValue) { logger.trace("assert that [{}] is less than [{}] (field: [{}])", actualValue, expectedValue, getField()); assertThat("value of [" + getField() + "] is not comparable (got [" + safeClass(actualValue) + "])", diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanOrEqualToAssertion.java b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanOrEqualToAssertion.java index b4e7cf67d40de..83ba784d9e08e 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanOrEqualToAssertion.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/section/LessThanOrEqualToAssertion.java @@ -43,6 +43,7 @@ public LessThanOrEqualToAssertion(XContentLocation location, String field, Objec } @Override + @SuppressWarnings({"rawtypes", "unchecked"}) protected void doAssert(Object actualValue, Object expectedValue) { logger.trace("assert that [{}] is less than or equal to [{}] (field: [{}])", actualValue, expectedValue, getField()); assertThat("value of [" + getField() + "] is not comparable (got [" + safeClass(actualValue) + "])",