Disable tests not compliant with Java 17 out of the box Many of the tests are not yet compliant with Java 17 because of the lack of a proper set of system properties. Change-Id: Iaf6b9a2678c3153e78a072bc76cbf3c6f6dc29b7
diff --git a/BUILD b/BUILD index dc34ede..3947a62 100644 --- a/BUILD +++ b/BUILD
@@ -65,6 +65,7 @@ java_library( name = "chroniclemap-test-lib", testonly = True, - srcs = ["src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/TestPersistentCacheDef.java"], - deps = PLUGIN_DEPS, + srcs = ["src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/TestPersistentCacheDef.java", + "src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AssumeJava11.java"], + deps = PLUGIN_DEPS + [ "//lib:junit" ], )
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AnalyzeH2CachesIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AnalyzeH2CachesIT.java index 7c55849..016e479 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AnalyzeH2CachesIT.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AnalyzeH2CachesIT.java
@@ -15,6 +15,7 @@ package com.googlesource.gerrit.modules.cache.chroniclemap; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import com.google.common.base.Joiner; import com.google.gerrit.acceptance.LightweightPluginDaemonTest; @@ -26,6 +27,7 @@ import com.google.inject.Inject; import java.nio.file.Files; import java.nio.file.Path; +import org.junit.Before; import org.junit.Test; @UseSsh @@ -40,6 +42,11 @@ private String cmd = Joiner.on(" ").join("cache-chroniclemap", "analyze-h2-caches"); + @Before + public void setup() { + assumeJava11(); + } + @Test public void shouldAnalyzeH2Cache() throws Exception { createChange();
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AssumeJava11.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AssumeJava11.java new file mode 100644 index 0000000..be22f5d --- /dev/null +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AssumeJava11.java
@@ -0,0 +1,28 @@ +// Copyright (C) 2023 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.googlesource.gerrit.modules.cache.chroniclemap; + +import static org.junit.Assume.assumeTrue; + +interface AssumeJava11 { + + static void assumeJava11() { + assumeTrue(isJava11()); + } + + static boolean isJava11() { + return System.getProperty("java.version").startsWith("11."); + } +}
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AutoAdjustCachesIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AutoAdjustCachesIT.java index 5e4fe22..ab763f0 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AutoAdjustCachesIT.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/AutoAdjustCachesIT.java
@@ -15,6 +15,8 @@ package com.googlesource.gerrit.modules.cache.chroniclemap; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.isJava11; import static com.googlesource.gerrit.modules.cache.chroniclemap.AutoAdjustCaches.MAX_ENTRIES_MULTIPLIER; import static com.googlesource.gerrit.modules.cache.chroniclemap.AutoAdjustCaches.PERCENTAGE_SIZE_INCREASE_THRESHOLD; import static com.googlesource.gerrit.modules.cache.chroniclemap.AutoAdjustCachesCommand.CONFIG_HEADER; @@ -36,6 +38,7 @@ import com.google.gerrit.common.Nullable; import com.google.gerrit.server.ModuleImpl; import com.google.gerrit.server.cache.CacheModule; +import com.google.gerrit.server.cache.h2.H2CacheModule; import com.google.gerrit.server.config.SitePaths; import com.google.inject.Inject; import com.google.inject.name.Named; @@ -49,6 +52,7 @@ import java.util.stream.Stream; import org.eclipse.jgit.errors.ConfigInvalidException; import org.eclipse.jgit.lib.Config; +import org.junit.Before; import org.junit.Test; @Sandboxed @@ -97,7 +101,12 @@ persist(TEST_CACHE_NAME, String.class, String.class) .loader(TestCacheLoader.class) .version(TEST_CACHE_VERSION); - install(new ChronicleMapCacheModule()); + + if (isJava11()) { + install(new ChronicleMapCacheModule()); + } else { + install(new H2CacheModule()); + } } } @@ -109,6 +118,11 @@ } } + @Before + public void setup() { + assumeJava11(); + } + @Override public com.google.inject.Module createModule() { return new TestPersistentCacheModule();
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/CacheKeysIndexTest.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/CacheKeysIndexTest.java index c8a8b66..0df1a9c 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/CacheKeysIndexTest.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/CacheKeysIndexTest.java
@@ -15,6 +15,7 @@ package com.googlesource.gerrit.modules.cache.chroniclemap; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import static com.googlesource.gerrit.modules.cache.chroniclemap.CacheKeysIndex.tempIndexFile; import static java.util.stream.Collectors.toList; import static org.mockito.Mockito.mock; @@ -41,6 +42,7 @@ @Before public void setup() throws IOException { + assumeJava11(); CacheSerializers.registerCacheKeySerializer(CACHE_NAME, StringCacheSerializer.INSTANCE); indexFile = temporaryFolder.newFolder().toPath().resolve("cache.index").toFile(); index = new CacheKeysIndex<>(new DisabledMetricMaker(), CACHE_NAME, indexFile, false);
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheConfigDefaultsIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheConfigDefaultsIT.java index f3e909d..132134e 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheConfigDefaultsIT.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheConfigDefaultsIT.java
@@ -15,6 +15,8 @@ package com.googlesource.gerrit.modules.cache.chroniclemap; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.isJava11; import com.google.gerrit.acceptance.AbstractDaemonTest; import com.google.gerrit.acceptance.UseLocalDisk; @@ -29,10 +31,13 @@ public class ChronicleMapCacheConfigDefaultsIT extends AbstractDaemonTest { @Override public ChronicleMapCacheModule createModule() { - // CacheSerializers is accumulating cache names from different test executions in CI therefore - // it has to be cleared before this test - CacheSerializers.clear(); - return new ChronicleMapCacheModule(); + if (isJava11()) { + // CacheSerializers is accumulating cache names from different test executions in CI therefore + // it has to be cleared before this test + CacheSerializers.clear(); + return new ChronicleMapCacheModule(); + } + return null; } @Test @@ -41,6 +46,7 @@ @GerritConfig(name = "cache.change_notes.diskLimit", value = "1") @GerritConfig(name = "cache.external_ids_map.diskLimit", value = "1") public void shouldAllPersistentCachesHaveDefaultConfiguration() throws Exception { + assumeJava11(); Set<String> allCaches = CacheSerializers.getSerializersNames(); assertThat(Defaults.defaultMap.keySet()).containsExactlyElementsIn(allCaches); }
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java index 9367727..f98dac7 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheIT.java
@@ -15,6 +15,8 @@ import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth8.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.isJava11; import com.google.common.cache.Cache; import com.google.gerrit.acceptance.AbstractDaemonTest; @@ -23,6 +25,7 @@ import com.google.gerrit.extensions.api.accounts.AccountInput; import com.google.gerrit.server.cache.PersistentCacheFactory; import com.google.inject.Inject; +import org.junit.Before; import org.junit.Test; @UseLocalDisk @@ -31,9 +34,14 @@ private static final int ZERO_INMEMORY_CACHE = 0; @Inject PersistentCacheFactory persistentCacheFactory; + @Before + public void setup() { + assumeJava11(); + } + @Override public com.google.inject.Module createModule() { - return new ChronicleMapCacheModule(); + return isJava11() ? new ChronicleMapCacheModule() : null; } @Test
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java index 58cc4ec..d89d33a 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/ChronicleMapCacheTest.java
@@ -16,6 +16,7 @@ import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertWithMessage; import static com.google.gerrit.testing.GerritJUnit.assertThrows; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import static org.mockito.Mockito.mock; import com.codahale.metrics.Counter; @@ -63,6 +64,7 @@ @Before public void setUp() throws Exception { + assumeJava11(); CacheSerializers.registerCacheKeySerializer(testCacheName, StringCacheSerializer.INSTANCE); CacheSerializers.registerCacheValueSerializer(testCacheName, StringCacheSerializer.INSTANCE);
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/KeyWrapperMarshallerTest.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/KeyWrapperMarshallerTest.java index 44a5dd6..8965629 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/KeyWrapperMarshallerTest.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/KeyWrapperMarshallerTest.java
@@ -14,6 +14,7 @@ package com.googlesource.gerrit.modules.cache.chroniclemap; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import com.google.gerrit.server.cache.serialize.ObjectIdCacheSerializer; import java.nio.ByteBuffer; @@ -27,6 +28,7 @@ @Before public void setup() { + assumeJava11(); CacheSerializers.registerCacheKeySerializer(TEST_CACHE_NAME, ObjectIdCacheSerializer.INSTANCE); }
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesInMemoryIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesInMemoryIT.java index 3561051..b21a0e7 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesInMemoryIT.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesInMemoryIT.java
@@ -16,6 +16,7 @@ import static com.google.common.net.HttpHeaders.CONTENT_TYPE; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import static org.apache.http.HttpHeaders.ACCEPT; import static org.eclipse.jgit.util.HttpSupport.TEXT_PLAIN; @@ -25,6 +26,7 @@ import com.google.gerrit.acceptance.TestPlugin; import java.io.IOException; import org.apache.http.message.BasicHeader; +import org.junit.Before; import org.junit.Test; @TestPlugin( @@ -33,6 +35,11 @@ public class MigrateH2CachesInMemoryIT extends LightweightPluginDaemonTest { private static final String MIGRATION_ENDPOINT = "/plugins/cache-chroniclemap/migrate"; + @Before + public void setup() { + assumeJava11(); + } + @Test public void shouldReturnTexPlain() throws Exception { RestResponse result = runMigration(adminRestSession);
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesLocalDiskIT.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesLocalDiskIT.java index 57de6cd..71d87ef 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesLocalDiskIT.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/MigrateH2CachesLocalDiskIT.java
@@ -16,6 +16,7 @@ import static com.google.common.truth.Truth.assertThat; import static com.google.gerrit.acceptance.testsuite.project.TestProjectUpdate.allowCapability; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import static com.googlesource.gerrit.modules.cache.chroniclemap.H2CacheCommand.H2_SUFFIX; import static com.googlesource.gerrit.modules.cache.chroniclemap.H2MigrationServlet.DEFAULT_MAX_BLOAT_FACTOR; import static com.googlesource.gerrit.modules.cache.chroniclemap.H2MigrationServlet.DEFAULT_SIZE_MULTIPLIER; @@ -76,6 +77,7 @@ @Before public void setUp() { + assumeJava11(); chronicleMapCacheConfigFactory = plugin.getHttpInjector().getInstance(ChronicleMapCacheConfig.Factory.class); }
diff --git a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/TimedValueMarshallerTest.java b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/TimedValueMarshallerTest.java index b4eb4ca..4c3208f 100644 --- a/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/TimedValueMarshallerTest.java +++ b/src/test/java/com/googlesource/gerrit/modules/cache/chroniclemap/TimedValueMarshallerTest.java
@@ -14,6 +14,7 @@ package com.googlesource.gerrit.modules.cache.chroniclemap; import static com.google.common.truth.Truth.assertThat; +import static com.googlesource.gerrit.modules.cache.chroniclemap.AssumeJava11.assumeJava11; import com.google.gerrit.acceptance.TestMetricMaker; import com.google.gerrit.server.cache.serialize.ObjectIdCacheSerializer; @@ -28,6 +29,7 @@ @Before public void setup() { + assumeJava11(); CacheSerializers.registerCacheValueSerializer( TEST_CACHE_NAME, ObjectIdCacheSerializer.INSTANCE); }