diff --git a/buildSrc/gradle/dependency-locks/testCompile.lockfile b/buildSrc/gradle/dependency-locks/testCompile.lockfile index c6e74f1a6..61406f936 100644 --- a/buildSrc/gradle/dependency-locks/testCompile.lockfile +++ b/buildSrc/gradle/dependency-locks/testCompile.lockfile @@ -61,12 +61,12 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.hamcrest:hamcrest-core:1.3 org.json:json:20160212 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.mockito:mockito-core:3.3.3 org.objenesis:objenesis:2.6 org.opentest4j:opentest4j:1.2.0 diff --git a/buildSrc/gradle/dependency-locks/testCompileClasspath.lockfile b/buildSrc/gradle/dependency-locks/testCompileClasspath.lockfile index c6e74f1a6..61406f936 100644 --- a/buildSrc/gradle/dependency-locks/testCompileClasspath.lockfile +++ b/buildSrc/gradle/dependency-locks/testCompileClasspath.lockfile @@ -61,12 +61,12 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.hamcrest:hamcrest-core:1.3 org.json:json:20160212 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.mockito:mockito-core:3.3.3 org.objenesis:objenesis:2.6 org.opentest4j:opentest4j:1.2.0 diff --git a/buildSrc/gradle/dependency-locks/testRuntime.lockfile b/buildSrc/gradle/dependency-locks/testRuntime.lockfile index c6e74f1a6..61406f936 100644 --- a/buildSrc/gradle/dependency-locks/testRuntime.lockfile +++ b/buildSrc/gradle/dependency-locks/testRuntime.lockfile @@ -61,12 +61,12 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.hamcrest:hamcrest-core:1.3 org.json:json:20160212 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.mockito:mockito-core:3.3.3 org.objenesis:objenesis:2.6 org.opentest4j:opentest4j:1.2.0 diff --git a/buildSrc/gradle/dependency-locks/testRuntimeClasspath.lockfile b/buildSrc/gradle/dependency-locks/testRuntimeClasspath.lockfile index c6e74f1a6..61406f936 100644 --- a/buildSrc/gradle/dependency-locks/testRuntimeClasspath.lockfile +++ b/buildSrc/gradle/dependency-locks/testRuntimeClasspath.lockfile @@ -61,12 +61,12 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.hamcrest:hamcrest-core:1.3 org.json:json:20160212 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.mockito:mockito-core:3.3.3 org.objenesis:objenesis:2.6 org.opentest4j:opentest4j:1.2.0 diff --git a/common/gradle/dependency-locks/testCompile.lockfile b/common/gradle/dependency-locks/testCompile.lockfile index 4efb2648c..8cdc81ffa 100644 --- a/common/gradle/dependency-locks/testCompile.lockfile +++ b/common/gradle/dependency-locks/testCompile.lockfile @@ -20,10 +20,10 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.eclipse.jgit:org.eclipse.jgit:4.4.1.201607150455-r org.hamcrest:hamcrest-core:1.3 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.opentest4j:opentest4j:1.2.0 diff --git a/common/gradle/dependency-locks/testCompileClasspath.lockfile b/common/gradle/dependency-locks/testCompileClasspath.lockfile index 4efb2648c..8cdc81ffa 100644 --- a/common/gradle/dependency-locks/testCompileClasspath.lockfile +++ b/common/gradle/dependency-locks/testCompileClasspath.lockfile @@ -20,10 +20,10 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.eclipse.jgit:org.eclipse.jgit:4.4.1.201607150455-r org.hamcrest:hamcrest-core:1.3 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.opentest4j:opentest4j:1.2.0 diff --git a/common/gradle/dependency-locks/testRuntime.lockfile b/common/gradle/dependency-locks/testRuntime.lockfile index 75f48baa1..1cf05bf4f 100644 --- a/common/gradle/dependency-locks/testRuntime.lockfile +++ b/common/gradle/dependency-locks/testRuntime.lockfile @@ -21,10 +21,10 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.eclipse.jgit:org.eclipse.jgit:4.4.1.201607150455-r org.hamcrest:hamcrest-core:1.3 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.opentest4j:opentest4j:1.2.0 diff --git a/common/gradle/dependency-locks/testRuntimeClasspath.lockfile b/common/gradle/dependency-locks/testRuntimeClasspath.lockfile index 75f48baa1..1cf05bf4f 100644 --- a/common/gradle/dependency-locks/testRuntimeClasspath.lockfile +++ b/common/gradle/dependency-locks/testRuntimeClasspath.lockfile @@ -21,10 +21,10 @@ org.checkerframework:checker-compat-qual:2.5.5 org.checkerframework:checker-qual:2.11.1 org.eclipse.jgit:org.eclipse.jgit:4.4.1.201607150455-r org.hamcrest:hamcrest-core:1.3 -org.junit.jupiter:junit-jupiter-api:5.6.1 -org.junit.jupiter:junit-jupiter-engine:5.6.1 -org.junit.platform:junit-platform-commons:1.6.1 -org.junit.platform:junit-platform-engine:1.6.1 -org.junit.vintage:junit-vintage-engine:5.6.1 -org.junit:junit-bom:5.6.1 +org.junit.jupiter:junit-jupiter-api:5.6.2 +org.junit.jupiter:junit-jupiter-engine:5.6.2 +org.junit.platform:junit-platform-commons:1.6.2 +org.junit.platform:junit-platform-engine:1.6.2 +org.junit.vintage:junit-vintage-engine:5.6.2 +org.junit:junit-bom:5.6.2 org.opentest4j:opentest4j:1.2.0 diff --git a/config/presubmits.py b/config/presubmits.py index 515db5b52..265f40d82 100644 --- a/config/presubmits.py +++ b/config/presubmits.py @@ -77,9 +77,9 @@ PRESUBMITS = { PresubmitCheck( r".*Copyright 20\d{2} The Nomulus Authors\. All Rights Reserved\.", ("java", "js", "soy", "sql", "py", "sh", "gradle"), { - ".git", "/build/", "/generated/", "node_modules/", - "JUnitBackports.java", "registrar_bin.", "registrar_dbg.", - "google-java-format-diff.py", + ".git", "/build/", "/generated/", "/generated_tests/", + "node_modules/", "JUnitBackports.java", "registrar_bin.", + "registrar_dbg.", "google-java-format-diff.py", "nomulus.golden.sql", "soyutils_usegoog.js" }, REQUIRED): "File did not include the license header.", diff --git a/core/build.gradle b/core/build.gradle index c839c9209..36b58c519 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -312,6 +312,7 @@ dependencies { testCompile deps['org.junit.jupiter:junit-jupiter-api'] testCompile deps['org.junit.jupiter:junit-jupiter-engine'] testCompile deps['org.junit.jupiter:junit-jupiter-migrationsupport'] + testCompile deps['org.junit.jupiter:junit-jupiter-params'] testCompile deps['org.junit.platform:junit-platform-runner'] testCompile deps['org.junit.platform:junit-platform-suite-api'] testCompile deps['org.junit.vintage:junit-vintage-engine'] diff --git a/core/gradle/dependency-locks/testCompile.lockfile b/core/gradle/dependency-locks/testCompile.lockfile index c35e72428..6d0763544 100644 --- a/core/gradle/dependency-locks/testCompile.lockfile +++ b/core/gradle/dependency-locks/testCompile.lockfile @@ -246,6 +246,7 @@ org.json:json:20160810 org.junit.jupiter:junit-jupiter-api:5.6.2 org.junit.jupiter:junit-jupiter-engine:5.6.2 org.junit.jupiter:junit-jupiter-migrationsupport:5.6.2 +org.junit.jupiter:junit-jupiter-params:5.6.2 org.junit.platform:junit-platform-commons:1.6.2 org.junit.platform:junit-platform-engine:1.6.2 org.junit.platform:junit-platform-launcher:1.6.2 diff --git a/core/gradle/dependency-locks/testCompileClasspath.lockfile b/core/gradle/dependency-locks/testCompileClasspath.lockfile index dd0ba56fa..73605a65b 100644 --- a/core/gradle/dependency-locks/testCompileClasspath.lockfile +++ b/core/gradle/dependency-locks/testCompileClasspath.lockfile @@ -244,6 +244,7 @@ org.json:json:20160810 org.junit.jupiter:junit-jupiter-api:5.6.2 org.junit.jupiter:junit-jupiter-engine:5.6.2 org.junit.jupiter:junit-jupiter-migrationsupport:5.6.2 +org.junit.jupiter:junit-jupiter-params:5.6.2 org.junit.platform:junit-platform-commons:1.6.2 org.junit.platform:junit-platform-engine:1.6.2 org.junit.platform:junit-platform-launcher:1.6.2 diff --git a/core/gradle/dependency-locks/testRuntime.lockfile b/core/gradle/dependency-locks/testRuntime.lockfile index 03066a262..9fb8b3f18 100644 --- a/core/gradle/dependency-locks/testRuntime.lockfile +++ b/core/gradle/dependency-locks/testRuntime.lockfile @@ -249,6 +249,7 @@ org.json:json:20160810 org.junit.jupiter:junit-jupiter-api:5.6.2 org.junit.jupiter:junit-jupiter-engine:5.6.2 org.junit.jupiter:junit-jupiter-migrationsupport:5.6.2 +org.junit.jupiter:junit-jupiter-params:5.6.2 org.junit.platform:junit-platform-commons:1.6.2 org.junit.platform:junit-platform-engine:1.6.2 org.junit.platform:junit-platform-launcher:1.6.2 diff --git a/core/gradle/dependency-locks/testRuntimeClasspath.lockfile b/core/gradle/dependency-locks/testRuntimeClasspath.lockfile index 32eed45c3..5168aae42 100644 --- a/core/gradle/dependency-locks/testRuntimeClasspath.lockfile +++ b/core/gradle/dependency-locks/testRuntimeClasspath.lockfile @@ -249,6 +249,7 @@ org.json:json:20160810 org.junit.jupiter:junit-jupiter-api:5.6.2 org.junit.jupiter:junit-jupiter-engine:5.6.2 org.junit.jupiter:junit-jupiter-migrationsupport:5.6.2 +org.junit.jupiter:junit-jupiter-params:5.6.2 org.junit.platform:junit-platform-commons:1.6.2 org.junit.platform:junit-platform-engine:1.6.2 org.junit.platform:junit-platform-launcher:1.6.2 diff --git a/core/src/test/java/google/registry/keyring/api/KeySerializerTest.java b/core/src/test/java/google/registry/keyring/api/KeySerializerTest.java index 2c3629277..4f10a3d13 100644 --- a/core/src/test/java/google/registry/keyring/api/KeySerializerTest.java +++ b/core/src/test/java/google/registry/keyring/api/KeySerializerTest.java @@ -29,17 +29,13 @@ import org.bouncycastle.openpgp.PGPUtil; import org.bouncycastle.openpgp.bc.BcPGPSecretKeyRing; import org.bouncycastle.openpgp.operator.bc.BcPBESecretKeyDecryptorBuilder; import org.bouncycastle.openpgp.operator.bc.BcPGPDigestCalculatorProvider; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; /** Unit tests for {@link KeySerializer}. */ -@RunWith(JUnit4.class) -public class KeySerializerTest { +class KeySerializerTest { - @Rule - public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); + @RegisterExtension final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); /** * An Armored representation of a pgp secret key. @@ -50,65 +46,65 @@ public class KeySerializerTest { */ private static final String ARMORED_KEY_STRING = "-----BEGIN PGP PRIVATE KEY BLOCK-----\n" - + "Version: GnuPG v1\n" - + "\n" - + "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\n" - + "GQ==\n" - + "=qeFB\n" - + "-----END PGP PRIVATE KEY BLOCK-----\n"; + + "Version: GnuPG v1\n" + + "\n" + + "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\n" + + "GQ==\n" + + "=qeFB\n" + + "-----END PGP PRIVATE KEY BLOCK-----\n"; private static final BcPGPSecretKeyRing SECRET_KEYRING = getSecretKeyring(); @@ -139,20 +135,22 @@ public class KeySerializerTest { } } - @Test public void serializeString() { + @Test + void serializeString() { String result = KeySerializer.deserializeString(KeySerializer.serializeString("value\n")); assertThat(result).isEqualTo("value\n"); } - @Test public void serializePublicKey() throws Exception { + @Test + void serializePublicKey() throws Exception { PGPPublicKey publicKeyResult = - KeySerializer.deserializePublicKey( - KeySerializer.serializePublicKey(PUBLIC_KEY)); + KeySerializer.deserializePublicKey(KeySerializer.serializePublicKey(PUBLIC_KEY)); assertThat(publicKeyResult.getEncoded()).isEqualTo(PUBLIC_KEY.getEncoded()); } - @Test public void serializeKeyPair() throws Exception { + @Test + void serializeKeyPair() throws Exception { PGPKeyPair keyPairResult = KeySerializer.deserializeKeyPair( KeySerializer.serializeKeyPair(new PGPKeyPair(PUBLIC_KEY, PRIVATE_KEY))); diff --git a/core/src/test/java/google/registry/keyring/kms/KmsKeyringTest.java b/core/src/test/java/google/registry/keyring/kms/KmsKeyringTest.java index 30e17c930..1a11b3f81 100644 --- a/core/src/test/java/google/registry/keyring/kms/KmsKeyringTest.java +++ b/core/src/test/java/google/registry/keyring/kms/KmsKeyringTest.java @@ -26,67 +26,57 @@ import google.registry.testing.BouncyCastleProviderRule; import org.bouncycastle.openpgp.PGPKeyPair; import org.bouncycastle.openpgp.PGPPrivateKey; import org.bouncycastle.openpgp.PGPPublicKey; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; -@RunWith(JUnit4.class) -public class KmsKeyringTest { +/** Unit tests for {@link KmsKeyring}. */ +class KmsKeyringTest { - @Rule public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); + @RegisterExtension final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); - @Rule - public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build(); + @RegisterExtension + final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build(); private KmsKeyring keyring; - @Before - public void setUp() { + @BeforeEach + void beforeEach() { keyring = new KmsKeyring(new FakeKmsConnection()); } @Test - public void test_getCloudSqlPassword() throws Exception { + void test_getCloudSqlPassword() { saveCleartextSecret("cloud-sql-password-string"); - String cloudSqlPassword = keyring.getCloudSqlPassword(); - assertThat(cloudSqlPassword).isEqualTo("cloud-sql-password-stringmoo"); } @Test - public void test_getToolsCloudSqlPassword() throws Exception { + void test_getToolsCloudSqlPassword() { saveCleartextSecret("tools-cloud-sql-password-string"); - String toolsCloudSqlPassword = keyring.getToolsCloudSqlPassword(); - assertThat(toolsCloudSqlPassword).isEqualTo("tools-cloud-sql-password-stringmoo"); } @Test - public void test_getRdeSigningKey() throws Exception { + void test_getRdeSigningKey() throws Exception { saveKeyPairSecret("rde-signing-public", "rde-signing-private"); - PGPKeyPair rdeSigningKey = keyring.getRdeSigningKey(); - assertThat(KeySerializer.serializeKeyPair(rdeSigningKey)) .isEqualTo(KeySerializer.serializeKeyPair(KmsTestHelper.getKeyPair())); } @Test - public void test_getRdeStagingEncryptionKey() throws Exception { + void test_getRdeStagingEncryptionKey() throws Exception { savePublicKeySecret("rde-staging-public"); - PGPPublicKey rdeStagingEncryptionKey = keyring.getRdeStagingEncryptionKey(); - assertThat(rdeStagingEncryptionKey.getFingerprint()) .isEqualTo(KmsTestHelper.getPublicKey().getFingerprint()); } @Test - public void test_getRdeStagingDecryptionKey() throws Exception { + void test_getRdeStagingDecryptionKey() throws Exception { savePrivateKeySecret("rde-staging-private"); savePublicKeySecret("rde-staging-public"); @@ -99,96 +89,75 @@ public class KmsKeyringTest { } @Test - public void test_getRdeReceiverKey() throws Exception { + void test_getRdeReceiverKey() throws Exception { savePublicKeySecret("rde-receiver-public"); - PGPPublicKey rdeReceiverKey = keyring.getRdeReceiverKey(); - assertThat(rdeReceiverKey.getFingerprint()) .isEqualTo(KmsTestHelper.getPublicKey().getFingerprint()); } @Test - public void test_getBrdaSigningKey() throws Exception { + void test_getBrdaSigningKey() throws Exception { saveKeyPairSecret("brda-signing-public", "brda-signing-private"); - PGPKeyPair brdaSigningKey = keyring.getBrdaSigningKey(); - assertThat(KeySerializer.serializeKeyPair(brdaSigningKey)) .isEqualTo(KeySerializer.serializeKeyPair(KmsTestHelper.getKeyPair())); } @Test - public void test_getBrdaReceiverKey() throws Exception { + void test_getBrdaReceiverKey() throws Exception { savePublicKeySecret("brda-receiver-public"); - PGPPublicKey brdaReceiverKey = keyring.getBrdaReceiverKey(); - assertThat(brdaReceiverKey.getFingerprint()) .isEqualTo(KmsTestHelper.getPublicKey().getFingerprint()); } @Test - public void test_getRdeSshClientPublicKey() { + void test_getRdeSshClientPublicKey() { saveCleartextSecret("rde-ssh-client-public-string"); - String rdeSshClientPublicKey = keyring.getRdeSshClientPublicKey(); - assertThat(rdeSshClientPublicKey).isEqualTo("rde-ssh-client-public-stringmoo"); } @Test - public void test_getRdeSshClientPrivateKey() { + void test_getRdeSshClientPrivateKey() { saveCleartextSecret("rde-ssh-client-private-string"); - String rdeSshClientPrivateKey = keyring.getRdeSshClientPrivateKey(); - assertThat(rdeSshClientPrivateKey).isEqualTo("rde-ssh-client-private-stringmoo"); } @Test - public void test_getIcannReportingPassword() { + void test_getIcannReportingPassword() { saveCleartextSecret("icann-reporting-password-string"); - String icannReportingPassword = keyring.getIcannReportingPassword(); - assertThat(icannReportingPassword).isEqualTo("icann-reporting-password-stringmoo"); } @Test - public void test_getMarksdbDnlLoginAndPassword() { + void test_getMarksdbDnlLoginAndPassword() { saveCleartextSecret("marksdb-dnl-login-string"); - String marksdbDnlLoginAndPassword = keyring.getMarksdbDnlLoginAndPassword(); - assertThat(marksdbDnlLoginAndPassword).isEqualTo("marksdb-dnl-login-stringmoo"); } @Test - public void test_getMarksdbLordnPassword() { + void test_getMarksdbLordnPassword() { saveCleartextSecret("marksdb-lordn-password-string"); - String marksdbLordnPassword = keyring.getMarksdbLordnPassword(); - assertThat(marksdbLordnPassword).isEqualTo("marksdb-lordn-password-stringmoo"); } @Test - public void test_getMarksdbSmdrlLoginAndPassword() { + void test_getMarksdbSmdrlLoginAndPassword() { saveCleartextSecret("marksdb-smdrl-login-string"); - String marksdbSmdrlLoginAndPassword = keyring.getMarksdbSmdrlLoginAndPassword(); - assertThat(marksdbSmdrlLoginAndPassword).isEqualTo("marksdb-smdrl-login-stringmoo"); - } @Test - public void test_getJsonCredential() { + void test_getJsonCredential() { saveCleartextSecret("json-credential-string"); - String jsonCredential = keyring.getJsonCredential(); - assertThat(jsonCredential).isEqualTo("json-credential-stringmoo"); } diff --git a/core/src/test/java/google/registry/keyring/kms/KmsUpdaterTest.java b/core/src/test/java/google/registry/keyring/kms/KmsUpdaterTest.java index 11ad8c4aa..e3ec2cd74 100644 --- a/core/src/test/java/google/registry/keyring/kms/KmsUpdaterTest.java +++ b/core/src/test/java/google/registry/keyring/kms/KmsUpdaterTest.java @@ -27,29 +27,27 @@ import google.registry.testing.BouncyCastleProviderRule; import java.io.IOException; import org.bouncycastle.openpgp.PGPKeyPair; import org.bouncycastle.openpgp.PGPPublicKey; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; -@RunWith(JUnit4.class) +/** Unit tests for {@link KmsUpdater} */ public class KmsUpdaterTest { - @Rule + @RegisterExtension public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build(); - @Rule public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); + @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); private KmsUpdater updater; - @Before - public void setUp() { + @BeforeEach + void beforeEach() { updater = new KmsUpdater(new FakeKmsConnection()); } @Test - public void test_setMultipleSecrets() { + void test_setMultipleSecrets() { updater .setMarksdbDnlLoginAndPassword("value1") .setIcannReportingPassword("value2") @@ -69,7 +67,7 @@ public class KmsUpdaterTest { } @Test - public void test_setBrdaReceiverKey() throws Exception { + void test_setBrdaReceiverKey() throws Exception { updater.setBrdaReceiverPublicKey(KmsTestHelper.getPublicKey()).update(); verifySecretAndSecretRevisionWritten( @@ -79,7 +77,7 @@ public class KmsUpdaterTest { } @Test - public void test_setBrdaSigningKey() throws Exception { + void test_setBrdaSigningKey() throws Exception { updater.setBrdaSigningKey(KmsTestHelper.getKeyPair()).update(); verifySecretAndSecretRevisionWritten( @@ -93,7 +91,7 @@ public class KmsUpdaterTest { } @Test - public void test_setCloudSqlPassword() { + void test_setCloudSqlPassword() { updater.setCloudSqlPassword("value1").update(); verifySecretAndSecretRevisionWritten( @@ -101,7 +99,7 @@ public class KmsUpdaterTest { } @Test - public void test_setToolsCloudSqlPassword() { + void test_setToolsCloudSqlPassword() { updater.setToolsCloudSqlPassword("value1").update(); verifySecretAndSecretRevisionWritten( @@ -111,7 +109,7 @@ public class KmsUpdaterTest { } @Test - public void test_setIcannReportingPassword() { + void test_setIcannReportingPassword() { updater.setIcannReportingPassword("value1").update(); verifySecretAndSecretRevisionWritten( @@ -121,7 +119,7 @@ public class KmsUpdaterTest { } @Test - public void test_setJsonCredential() { + void test_setJsonCredential() { updater.setJsonCredential("value1").update(); verifySecretAndSecretRevisionWritten( @@ -129,7 +127,7 @@ public class KmsUpdaterTest { } @Test - public void test_setMarksdbDnlLoginAndPassword() { + void test_setMarksdbDnlLoginAndPassword() { updater.setMarksdbDnlLoginAndPassword("value1").update(); verifySecretAndSecretRevisionWritten( @@ -137,7 +135,7 @@ public class KmsUpdaterTest { } @Test - public void test_setMarksdbLordnPassword() { + void test_setMarksdbLordnPassword() { updater.setMarksdbLordnPassword("value1").update(); verifySecretAndSecretRevisionWritten( @@ -147,7 +145,7 @@ public class KmsUpdaterTest { } @Test - public void test_setMarksdbSmdrlLoginAndPassword() { + void test_setMarksdbSmdrlLoginAndPassword() { updater.setMarksdbSmdrlLoginAndPassword("value1").update(); verifySecretAndSecretRevisionWritten( @@ -155,7 +153,7 @@ public class KmsUpdaterTest { } @Test - public void test_setRdeReceiverKey() throws Exception { + void test_setRdeReceiverKey() throws Exception { updater.setRdeReceiverPublicKey(KmsTestHelper.getPublicKey()).update(); verifySecretAndSecretRevisionWritten( @@ -166,7 +164,7 @@ public class KmsUpdaterTest { } @Test - public void test_setRdeSigningKey() throws Exception { + void test_setRdeSigningKey() throws Exception { updater.setRdeSigningKey(KmsTestHelper.getKeyPair()).update(); verifySecretAndSecretRevisionWritten( @@ -180,7 +178,7 @@ public class KmsUpdaterTest { } @Test - public void test_setRdeSshClientPrivateKey() { + void test_setRdeSshClientPrivateKey() { updater.setRdeSshClientPrivateKey("value1").update(); verifySecretAndSecretRevisionWritten( @@ -190,7 +188,7 @@ public class KmsUpdaterTest { } @Test - public void test_setRdeSshClientPublicKey() { + void test_setRdeSshClientPublicKey() { updater.setRdeSshClientPublicKey("value1").update(); verifySecretAndSecretRevisionWritten( @@ -200,7 +198,7 @@ public class KmsUpdaterTest { } @Test - public void test_setRdeStagingKey() throws Exception { + void test_setRdeStagingKey() throws Exception { updater.setRdeStagingKey(KmsTestHelper.getKeyPair()).update(); verifySecretAndSecretRevisionWritten( diff --git a/core/src/test/java/google/registry/rde/BouncyCastleTest.java b/core/src/test/java/google/registry/rde/BouncyCastleTest.java index 293df648d..3cd07bcfb 100644 --- a/core/src/test/java/google/registry/rde/BouncyCastleTest.java +++ b/core/src/test/java/google/registry/rde/BouncyCastleTest.java @@ -65,10 +65,8 @@ import org.bouncycastle.openpgp.operator.bc.BcPGPDigestCalculatorProvider; import org.bouncycastle.openpgp.operator.bc.BcPublicKeyDataDecryptorFactory; import org.bouncycastle.openpgp.operator.bc.BcPublicKeyKeyEncryptionMethodGenerator; import org.bouncycastle.util.encoders.Base64; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; /** * Bouncy Castle – How does it work?! @@ -96,8 +94,6 @@ import org.junit.runners.JUnit4; * using 1.46 so thankfully we're not far enough behind that the Bouncy Castle authors have decided * to remove these functions. But a migration effort will be necessary in the future. */ -@RunWith(JUnit4.class) -@SuppressWarnings("resource") public class BouncyCastleTest { private static final String FALL_OF_HYPERION_A_DREAM = "" @@ -122,11 +118,10 @@ public class BouncyCastleTest { private static final FluentLogger logger = FluentLogger.forEnclosingClass(); - @Rule - public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); + @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); @Test - public void testCompressDecompress() throws Exception { + void testCompressDecompress() throws Exception { // Compress the data and write out a compressed data OpenPGP message. byte[] data; try (ByteArrayOutputStream output = new ByteArrayOutputStream()) { @@ -150,7 +145,7 @@ public class BouncyCastleTest { } @Test - public void testSignVerify_Detached() throws Exception { + void testSignVerify_Detached() throws Exception { // Load the keys. PGPPublicKeyRing publicKeyRing = new BcPGPPublicKeyRing(PUBLIC_KEY); PGPSecretKeyRing privateKeyRing = new BcPGPSecretKeyRing(PRIVATE_KEY); @@ -190,7 +185,7 @@ public class BouncyCastleTest { } @Test - public void testSignVerify_OnePass() throws Exception { + void testSignVerify_OnePass() throws Exception { // Load the keys. PGPPublicKeyRing publicKeyRing = new BcPGPPublicKeyRing(PUBLIC_KEY); PGPSecretKeyRing privateKeyRing = new BcPGPSecretKeyRing(PRIVATE_KEY); @@ -234,7 +229,7 @@ public class BouncyCastleTest { } @Test - public void testEncryptDecrypt_ExplicitStyle() throws Exception { + void testEncryptDecrypt_ExplicitStyle() throws Exception { int bufferSize = 64 * 1024; // Alice loads Bob's "publicKey" into memory. @@ -275,7 +270,7 @@ public class BouncyCastleTest { } @Test - public void testEncryptDecrypt_KeyRingStyle() throws Exception { + void testEncryptDecrypt_KeyRingStyle() throws Exception { int bufferSize = 64 * 1024; // Alice loads Bob's "publicKey" into memory from her public key ring. @@ -320,7 +315,7 @@ public class BouncyCastleTest { } @Test - public void testCompressEncryptDecryptDecompress_KeyRingStyle() throws Exception { + void testCompressEncryptDecryptDecompress_KeyRingStyle() throws Exception { int bufsz = 64 * 1024; // Alice loads Bob's "publicKey" into memory from her public key ring. diff --git a/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java b/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java index ca11c0ecc..ae6e6327b 100644 --- a/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java +++ b/core/src/test/java/google/registry/rde/BrdaCopyActionTest.java @@ -42,15 +42,12 @@ import org.bouncycastle.openpgp.PGPKeyPair; import org.bouncycastle.openpgp.PGPPrivateKey; import org.bouncycastle.openpgp.PGPPublicKey; import org.joda.time.DateTime; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; /** Unit tests for {@link BrdaCopyAction}. */ -@RunWith(JUnit4.class) public class BrdaCopyActionTest { private static final ByteSource DEPOSIT_XML = RdeTestData.loadBytes("deposit_full.xml"); @@ -64,24 +61,24 @@ public class BrdaCopyActionTest { private static final GcsFilename SIG_FILE = new GcsFilename("tub", "lol_2010-10-17_thin_S1_R0.sig"); - @Rule - public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); + @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule(); - @Rule + @RegisterExtension public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build(); - @Rule - public final GpgSystemCommandRule gpg = new GpgSystemCommandRule( - RdeTestData.loadBytes("pgp-public-keyring.asc"), - RdeTestData.loadBytes("pgp-private-keyring-escrow.asc")); + @RegisterExtension + public final GpgSystemCommandRule gpg = + new GpgSystemCommandRule( + RdeTestData.loadBytes("pgp-public-keyring.asc"), + RdeTestData.loadBytes("pgp-private-keyring-escrow.asc")); private static PGPPublicKey encryptKey; private static PGPPrivateKey decryptKey; private static PGPPublicKey receiverKey; private static PGPKeyPair signingKey; - @BeforeClass - public static void beforeClass() { + @BeforeAll + static void beforeAll() { try (Keyring keyring = new FakeKeyringModule().get()) { encryptKey = keyring.getRdeStagingEncryptionKey(); decryptKey = keyring.getRdeStagingDecryptionKey(); @@ -94,8 +91,8 @@ public class BrdaCopyActionTest { private final GcsUtils gcsUtils = new GcsUtils(gcsService, 1024); private final BrdaCopyAction action = new BrdaCopyAction(); - @Before - public void before() throws Exception { + @BeforeEach + void beforeEach() throws Exception { action.gcsUtils = gcsUtils; action.tld = "lol"; action.watermark = DateTime.parse("2010-10-17TZ"); @@ -112,7 +109,7 @@ public class BrdaCopyActionTest { } @Test - public void testRun() { + void testRun() { action.run(); assertThat(gcsUtils.existsAndNotEmpty(STAGE_FILE)).isTrue(); assertThat(gcsUtils.existsAndNotEmpty(RYDE_FILE)).isTrue(); @@ -120,7 +117,7 @@ public class BrdaCopyActionTest { } @Test - public void testRun_rydeFormat() throws Exception { + void testRun_rydeFormat() throws Exception { assumeTrue(hasCommand("gpg --version")); action.run(); @@ -167,7 +164,7 @@ public class BrdaCopyActionTest { } @Test - public void testRun_rydeSignature() throws Exception { + void testRun_rydeSignature() throws Exception { assumeTrue(hasCommand("gpg --version")); action.run(); diff --git a/core/src/test/java/google/registry/rde/ContactResourceToXjcConverterTest.java b/core/src/test/java/google/registry/rde/ContactResourceToXjcConverterTest.java index 8d371b0d1..28a06bcf5 100644 --- a/core/src/test/java/google/registry/rde/ContactResourceToXjcConverterTest.java +++ b/core/src/test/java/google/registry/rde/ContactResourceToXjcConverterTest.java @@ -47,11 +47,9 @@ import google.registry.xjc.rdecontact.XjcRdeContact; import google.registry.xjc.rdecontact.XjcRdeContactElement; import java.io.ByteArrayOutputStream; import org.joda.time.DateTime; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; /** * Unit tests for {@link ContactResourceToXjcConverter}. @@ -59,19 +57,18 @@ import org.junit.runners.JUnit4; *
This tests the mapping between {@link ContactResource} and {@link XjcRdeContact} as well as * some exceptional conditions. */ -@RunWith(JUnit4.class) public class ContactResourceToXjcConverterTest { - @Rule + @RegisterExtension public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build(); - @Before - public void before() { + @BeforeEach + void beforeEach() { createTld("xn--q9jyb4c"); } @Test - public void testConvertContact() { + void testConvertContact() { ContactResource contact = makeContactResource(); XjcRdeContact bean = ContactResourceToXjcConverter.convertContact(contact); @@ -232,7 +229,7 @@ public class ContactResourceToXjcConverterTest { } @Test - public void testConvertContact_absentVoiceAndFaxNumbers() { + void testConvertContact_absentVoiceAndFaxNumbers() { XjcRdeContact bean = ContactResourceToXjcConverter.convertContact( makeContactResource().asBuilder() .setVoiceNumber(null) @@ -243,7 +240,7 @@ public class ContactResourceToXjcConverterTest { } @Test - public void testConvertContact_absentDisclose() { + void testConvertContact_absentDisclose() { XjcRdeContact bean = ContactResourceToXjcConverter.convertContact( makeContactResource().asBuilder() .setDisclose(null) @@ -252,7 +249,7 @@ public class ContactResourceToXjcConverterTest { } @Test - public void testConvertContact_absentTransferData() { + void testConvertContact_absentTransferData() { XjcRdeContact bean = ContactResourceToXjcConverter.convertContact( makeContactResource().asBuilder() .setLastTransferTime(null) @@ -263,7 +260,7 @@ public class ContactResourceToXjcConverterTest { } @Test - public void testMarshal() throws Exception { + void testMarshal() throws Exception { XjcRdeContact bean = ContactResourceToXjcConverter.convertContact(makeContactResource()); wrapDeposit(bean).marshal(new ByteArrayOutputStream(), UTF_8); } diff --git a/core/src/test/java/google/registry/rde/DomainBaseToXjcConverterTest.java b/core/src/test/java/google/registry/rde/DomainBaseToXjcConverterTest.java index 3c91fe0a0..2ac43ad4e 100644 --- a/core/src/test/java/google/registry/rde/DomainBaseToXjcConverterTest.java +++ b/core/src/test/java/google/registry/rde/DomainBaseToXjcConverterTest.java @@ -71,11 +71,9 @@ import google.registry.xjc.secdns.XjcSecdnsDsDataType; import java.io.ByteArrayOutputStream; import org.joda.money.Money; import org.joda.time.DateTime; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; /** * Unit tests for {@link DomainBaseToXjcConverter}. @@ -83,22 +81,21 @@ import org.junit.runners.JUnit4; *
This tests the mapping between {@link DomainBase} and {@link XjcRdeDomain} as well as some
* exceptional conditions.
*/
-@RunWith(JUnit4.class)
public class DomainBaseToXjcConverterTest {
- @Rule
+ @RegisterExtension
public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build();
private final DateTime now = DateTime.parse("2014-01-01T00:00:00Z");
private final FakeClock clock = new FakeClock(now);
- @Before
- public void before() {
+ @BeforeEach
+ void beforeEach() {
createTld("xn--q9jyb4c");
}
@Test
- public void testConvertThick() {
+ void testConvertThick() {
XjcRdeDomain bean = DomainBaseToXjcConverter.convertDomain(makeDomainBase(clock), RdeMode.FULL);
assertThat(bean.getClID()).isEqualTo("GetTheeBack");
@@ -179,7 +176,7 @@ public class DomainBaseToXjcConverterTest {
}
@Test
- public void testConvertThin() {
+ void testConvertThin() {
XjcRdeDomain bean = DomainBaseToXjcConverter.convertDomain(makeDomainBase(clock), RdeMode.THIN);
assertThat(bean.getRegistrant()).isNull();
assertThat(bean.getContacts()).isEmpty();
@@ -187,18 +184,18 @@ public class DomainBaseToXjcConverterTest {
}
@Test
- public void testMarshalThick() throws Exception {
+ void testMarshalThick() throws Exception {
XjcRdeDomain bean = DomainBaseToXjcConverter.convertDomain(makeDomainBase(clock), RdeMode.FULL);
wrapDeposit(bean).marshal(new ByteArrayOutputStream(), UTF_8);
}
@Test
- public void testMarshalThin() throws Exception {
+ void testMarshalThin() throws Exception {
XjcRdeDomain bean = DomainBaseToXjcConverter.convertDomain(makeDomainBase(clock), RdeMode.THIN);
wrapDeposit(bean).marshal(new ByteArrayOutputStream(), UTF_8);
}
- public XjcRdeDeposit wrapDeposit(XjcRdeDomain domain) {
+ XjcRdeDeposit wrapDeposit(XjcRdeDomain domain) {
XjcRdeDeposit deposit = new XjcRdeDeposit();
deposit.setId("984302");
deposit.setType(XjcRdeDepositTypeType.FULL);
diff --git a/core/src/test/java/google/registry/rde/EscrowTaskRunnerTest.java b/core/src/test/java/google/registry/rde/EscrowTaskRunnerTest.java
index f88389002..df814ba7f 100644
--- a/core/src/test/java/google/registry/rde/EscrowTaskRunnerTest.java
+++ b/core/src/test/java/google/registry/rde/EscrowTaskRunnerTest.java
@@ -35,18 +35,15 @@ import google.registry.testing.FakeClock;
import google.registry.testing.FakeLockHandler;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
/** Unit tests for {@link EscrowTaskRunner}. */
-@RunWith(JUnit4.class)
public class EscrowTaskRunnerTest {
- @Rule
+ @RegisterExtension
public final AppEngineRule appEngine =
AppEngineRule.builder().withDatastoreAndCloudSql().withTaskQueue().build();
@@ -57,8 +54,8 @@ public class EscrowTaskRunnerTest {
private EscrowTaskRunner runner;
private Registry registry;
- @Before
- public void before() {
+ @BeforeEach
+ void beforeEach() {
createTld("lol");
registry = Registry.get("lol");
runner = new EscrowTaskRunner();
@@ -68,13 +65,13 @@ public class EscrowTaskRunnerTest {
DateTimeZone.setDefault(DateTimeZone.forID("America/New_York")); // Make sure UTC stuff works.
}
- @After
- public void after() {
+ @AfterEach
+ void afterEach() {
DateTimeZone.setDefault(previousDateTimeZone);
}
@Test
- public void testRun_cursorIsToday_advancesCursorToTomorrow() throws Exception {
+ void testRun_cursorIsToday_advancesCursorToTomorrow() throws Exception {
clock.setTo(DateTime.parse("2006-06-06T00:30:00Z"));
persistResource(
Cursor.create(CursorType.RDE_STAGING, DateTime.parse("2006-06-06TZ"), registry));
@@ -87,7 +84,7 @@ public class EscrowTaskRunnerTest {
}
@Test
- public void testRun_cursorMissing_assumesTodayAndAdvancesCursorToTomorrow() throws Exception {
+ void testRun_cursorMissing_assumesTodayAndAdvancesCursorToTomorrow() throws Exception {
clock.setTo(DateTime.parse("2006-06-06T00:30:00Z"));
runner.lockRunAndRollForward(
task, registry, standardSeconds(30), CursorType.RDE_STAGING, standardDays(1));
@@ -98,7 +95,7 @@ public class EscrowTaskRunnerTest {
}
@Test
- public void testRun_cursorInTheFuture_doesNothing() {
+ void testRun_cursorInTheFuture_doesNothing() {
clock.setTo(DateTime.parse("2006-06-06T00:30:00Z"));
persistResource(
Cursor.create(CursorType.RDE_STAGING, DateTime.parse("2006-06-07TZ"), registry));
@@ -112,7 +109,7 @@ public class EscrowTaskRunnerTest {
}
@Test
- public void testRun_lockIsntAvailable_throws503() {
+ void testRun_lockIsntAvailable_throws503() {
String lockName = "EscrowTaskRunner " + task.getClass().getSimpleName();
clock.setTo(DateTime.parse("2006-06-06T00:30:00Z"));
persistResource(
diff --git a/core/src/test/java/google/registry/rde/GhostrydeGpgIntegrationTest.java b/core/src/test/java/google/registry/rde/GhostrydeGpgIntegrationTest.java
index 5af328a94..049d8b488 100644
--- a/core/src/test/java/google/registry/rde/GhostrydeGpgIntegrationTest.java
+++ b/core/src/test/java/google/registry/rde/GhostrydeGpgIntegrationTest.java
@@ -14,13 +14,14 @@
package google.registry.rde;
-import static com.google.common.base.Strings.repeat;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
import static google.registry.testing.SystemInfo.hasCommand;
import static java.nio.charset.StandardCharsets.UTF_8;
import static org.junit.Assume.assumeTrue;
+import com.google.common.base.Strings;
+import com.google.common.collect.ImmutableList;
import com.google.common.io.CharStreams;
import google.registry.keyring.api.Keyring;
import google.registry.testing.BouncyCastleProviderRule;
@@ -32,55 +33,57 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
+import java.util.stream.Stream;
import org.bouncycastle.openpgp.PGPPublicKey;
-import org.junit.Rule;
-import org.junit.experimental.theories.DataPoints;
-import org.junit.experimental.theories.Theories;
-import org.junit.experimental.theories.Theory;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
/** GnuPG integration tests for {@link Ghostryde}. */
-@RunWith(Theories.class)
-@SuppressWarnings("resource")
-public class GhostrydeGpgIntegrationTest {
+class GhostrydeGpgIntegrationTest {
- @Rule
- public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
+ @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
- @Rule
+ @RegisterExtension
public final GpgSystemCommandRule gpg =
new GpgSystemCommandRule(
RdeTestData.loadBytes("pgp-public-keyring.asc"),
RdeTestData.loadBytes("pgp-private-keyring-registry.asc"));
- @DataPoints
- public static GpgCommand[] commands = new GpgCommand[] {
- new GpgCommand("gpg"),
- new GpgCommand("gpg2"),
- };
+ private static final ImmutableList This tests the mapping between {@link HostResource} and {@link XjcRdeHost} as well as some
* exceptional conditions.
*/
-@RunWith(JUnit4.class)
public class HostResourceToXjcConverterTest {
- @Rule
+ @RegisterExtension
public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build();
- @Before
- public void init() {
+ @BeforeEach
+ void beforeEach() {
createTld("foobar");
}
@Test
- public void testConvertSubordinateHost() {
+ void testConvertSubordinateHost() {
DomainBase domain =
newDomainBase("love.foobar")
.asBuilder()
@@ -120,7 +117,7 @@ public class HostResourceToXjcConverterTest {
}
@Test
- public void testConvertExternalHost() {
+ void testConvertExternalHost() {
XjcRdeHost bean =
HostResourceToXjcConverter.convertExternalHost(
new HostResource.Builder()
@@ -169,7 +166,7 @@ public class HostResourceToXjcConverterTest {
}
@Test
- public void testConvertExternalHost_ipv6() {
+ void testConvertExternalHost_ipv6() {
XjcRdeHost bean =
HostResourceToXjcConverter.convertExternalHost(
new HostResource.Builder()
@@ -190,7 +187,7 @@ public class HostResourceToXjcConverterTest {
}
@Test
- public void testHostStatusValueIsInvalid() {
+ void testHostStatusValueIsInvalid() {
assertThrows(
IllegalArgumentException.class,
() ->
@@ -210,7 +207,7 @@ public class HostResourceToXjcConverterTest {
}
@Test
- public void testMarshal() throws Exception {
+ void testMarshal() throws Exception {
// Bean! Bean! Bean!
XjcRdeHostElement bean =
HostResourceToXjcConverter.convertExternal(
diff --git a/core/src/test/java/google/registry/rde/PendingDepositCheckerTest.java b/core/src/test/java/google/registry/rde/PendingDepositCheckerTest.java
index 00f307139..a01fe2f1c 100644
--- a/core/src/test/java/google/registry/rde/PendingDepositCheckerTest.java
+++ b/core/src/test/java/google/registry/rde/PendingDepositCheckerTest.java
@@ -35,27 +35,23 @@ import google.registry.testing.AppEngineRule;
import google.registry.testing.FakeClock;
import google.registry.testing.InjectRule;
import org.joda.time.DateTime;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
/** Unit tests for {@link PendingDepositChecker}. */
-@RunWith(JUnit4.class)
public class PendingDepositCheckerTest {
- @Rule
- public final InjectRule inject = new InjectRule();
+ @RegisterExtension public final InjectRule inject = new InjectRule();
- @Rule
+ @RegisterExtension
public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build();
private final FakeClock clock = new FakeClock();
private final PendingDepositChecker checker = new PendingDepositChecker();
- @Before
- public void before() {
+ @BeforeEach
+ void beforeEach() {
inject.setStaticField(Ofy.class, "clock", clock);
checker.brdaDayOfWeek = TUESDAY;
checker.brdaInterval = standardDays(7);
@@ -64,14 +60,14 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_noTldsWithEscrowEnabled_returnsEmpty() {
+ void testMethod_noTldsWithEscrowEnabled_returnsEmpty() {
createTld("pal");
createTld("fun");
assertThat(checker.getTldsAndWatermarksPendingDepositForRdeAndBrda()).isEmpty();
}
@Test
- public void testMethod_firstDeposit_depositsRdeTodayAtMidnight() {
+ void testMethod_firstDeposit_depositsRdeTodayAtMidnight() {
clock.setTo(DateTime.parse("2000-01-01T08:00Z")); // Saturday
createTldWithEscrowEnabled("lol");
clock.advanceOneMilli();
@@ -82,7 +78,7 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_firstDepositOnBrdaDay_depositsBothRdeAndBrda() {
+ void testMethod_firstDepositOnBrdaDay_depositsBothRdeAndBrda() {
clock.setTo(DateTime.parse("2000-01-04T08:00Z")); // Tuesday
createTldWithEscrowEnabled("lol");
clock.advanceOneMilli();
@@ -95,7 +91,7 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_firstRdeDeposit_initializesCursorToMidnightToday() {
+ void testMethod_firstRdeDeposit_initializesCursorToMidnightToday() {
clock.setTo(DateTime.parse("2000-01-01TZ")); // Saturday
createTldWithEscrowEnabled("lol");
clock.advanceOneMilli();
@@ -107,7 +103,7 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_subsequentRdeDeposit_doesntMutateCursor() {
+ void testMethod_subsequentRdeDeposit_doesntMutateCursor() {
clock.setTo(DateTime.parse("2000-01-01TZ")); // Saturday
createTldWithEscrowEnabled("lol");
clock.advanceOneMilli();
@@ -120,7 +116,7 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_firstBrdaDepositButNotOnBrdaDay_doesntInitializeCursor() {
+ void testMethod_firstBrdaDepositButNotOnBrdaDay_doesntInitializeCursor() {
clock.setTo(DateTime.parse("2000-01-01TZ")); // Saturday
createTldWithEscrowEnabled("lol");
Registry registry = Registry.get("lol");
@@ -133,7 +129,7 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_backloggedTwoDays_onlyWantsLeastRecentDay() {
+ void testMethod_backloggedTwoDays_onlyWantsLeastRecentDay() {
clock.setTo(DateTime.parse("2000-01-01TZ"));
createTldWithEscrowEnabled("lol");
clock.advanceOneMilli();
@@ -146,7 +142,7 @@ public class PendingDepositCheckerTest {
}
@Test
- public void testMethod_multipleTldsWithEscrowEnabled_depositsBoth() {
+ void testMethod_multipleTldsWithEscrowEnabled_depositsBoth() {
clock.setTo(DateTime.parse("2000-01-01TZ")); // Saturday
createTldWithEscrowEnabled("pal");
clock.advanceOneMilli();
diff --git a/core/src/test/java/google/registry/rde/RdeMarshallerTest.java b/core/src/test/java/google/registry/rde/RdeMarshallerTest.java
index a142b8dc7..abc321708 100644
--- a/core/src/test/java/google/registry/rde/RdeMarshallerTest.java
+++ b/core/src/test/java/google/registry/rde/RdeMarshallerTest.java
@@ -20,23 +20,20 @@ import static google.registry.xml.ValidationMode.STRICT;
import google.registry.testing.AppEngineRule;
import google.registry.xml.XmlTestUtils;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
/** Unit tests for {@link RdeMarshaller}. */
-@RunWith(JUnit4.class)
public class RdeMarshallerTest {
private static final String DECLARATION =
"\n";
- @Rule
+ @RegisterExtension
public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build();
@Test
- public void testMarshalRegistrar_validData_producesXmlFragment() throws Exception {
+ void testMarshalRegistrar_validData_producesXmlFragment() throws Exception {
DepositFragment fragment =
new RdeMarshaller(STRICT).marshalRegistrar(loadRegistrar("TheRegistrar"));
assertThat(fragment.type()).isEqualTo(RdeResourceType.REGISTRAR);
@@ -80,7 +77,7 @@ public class RdeMarshallerTest {
}
@Test
- public void testMarshalRegistrar_unicodeCharacters_dontGetMangled() {
+ void testMarshalRegistrar_unicodeCharacters_dontGetMangled() {
DepositFragment fragment =
new RdeMarshaller(STRICT).marshalRegistrar(loadRegistrar("TheRegistrar"));
assertThat(fragment.xml()).contains("123 Example Bőulevard");
diff --git a/core/src/test/java/google/registry/rde/RdeReportActionTest.java b/core/src/test/java/google/registry/rde/RdeReportActionTest.java
index ebcf116e3..0bab0e3c8 100644
--- a/core/src/test/java/google/registry/rde/RdeReportActionTest.java
+++ b/core/src/test/java/google/registry/rde/RdeReportActionTest.java
@@ -64,24 +64,21 @@ import java.net.SocketTimeoutException;
import java.util.Map;
import org.bouncycastle.openpgp.PGPPublicKey;
import org.joda.time.DateTime;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
import org.mockito.ArgumentCaptor;
/** Unit tests for {@link RdeReportAction}. */
-@RunWith(JUnit4.class)
public class RdeReportActionTest {
private static final ByteSource REPORT_XML = RdeTestData.loadBytes("report.xml");
private static final ByteSource IIRDEA_BAD_XML = RdeTestData.loadBytes("iirdea_bad.xml");
private static final ByteSource IIRDEA_GOOD_XML = RdeTestData.loadBytes("iirdea_good.xml");
- @Rule
- public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
- @Rule
+ @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
+
+ @RegisterExtension
public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build();
private final FakeResponse response = new FakeResponse();
@@ -113,8 +110,8 @@ public class RdeReportActionTest {
return action;
}
- @Before
- public void before() throws Exception {
+ @BeforeEach
+ void beforeEach() throws Exception {
PGPPublicKey encryptKey = new FakeKeyringModule().get().getRdeStagingEncryptionKey();
createTld("test");
persistResource(
@@ -125,7 +122,7 @@ public class RdeReportActionTest {
}
@Test
- public void testRun() {
+ void testRun() {
createTld("lol");
RdeReportAction action = createAction();
action.tld = "lol";
@@ -136,7 +133,7 @@ public class RdeReportActionTest {
}
@Test
- public void testRunWithLock() throws Exception {
+ void testRunWithLock() throws Exception {
when(httpResponse.getResponseCode()).thenReturn(SC_OK);
when(httpResponse.getContent()).thenReturn(IIRDEA_GOOD_XML.read());
when(urlFetchService.fetch(request.capture())).thenReturn(httpResponse);
@@ -162,7 +159,7 @@ public class RdeReportActionTest {
}
@Test
- public void testRunWithLock_uploadNotFinished_throws204() {
+ void testRunWithLock_uploadNotFinished_throws204() {
persistResource(
Cursor.create(RDE_UPLOAD, DateTime.parse("2006-06-06TZ"), Registry.get("test")));
NoContentException thrown =
@@ -176,7 +173,7 @@ public class RdeReportActionTest {
}
@Test
- public void testRunWithLock_badRequest_throws500WithErrorInfo() throws Exception {
+ void testRunWithLock_badRequest_throws500WithErrorInfo() throws Exception {
when(httpResponse.getResponseCode()).thenReturn(SC_BAD_REQUEST);
when(httpResponse.getContent()).thenReturn(IIRDEA_BAD_XML.read());
when(urlFetchService.fetch(request.capture())).thenReturn(httpResponse);
@@ -188,7 +185,7 @@ public class RdeReportActionTest {
}
@Test
- public void testRunWithLock_fetchFailed_throwsRuntimeException() throws Exception {
+ void testRunWithLock_fetchFailed_throwsRuntimeException() throws Exception {
class ExpectedThrownException extends RuntimeException {}
when(urlFetchService.fetch(any(HTTPRequest.class))).thenThrow(new ExpectedThrownException());
assertThrows(
@@ -196,7 +193,7 @@ public class RdeReportActionTest {
}
@Test
- public void testRunWithLock_socketTimeout_doesRetry() throws Exception {
+ void testRunWithLock_socketTimeout_doesRetry() throws Exception {
when(httpResponse.getResponseCode()).thenReturn(SC_OK);
when(httpResponse.getContent()).thenReturn(IIRDEA_GOOD_XML.read());
when(urlFetchService.fetch(request.capture()))
diff --git a/core/src/test/java/google/registry/rde/RdeStagingActionTest.java b/core/src/test/java/google/registry/rde/RdeStagingActionTest.java
index a91ee6ffb..37c7e9dd0 100644
--- a/core/src/test/java/google/registry/rde/RdeStagingActionTest.java
+++ b/core/src/test/java/google/registry/rde/RdeStagingActionTest.java
@@ -90,15 +90,12 @@ import org.bouncycastle.openpgp.PGPPublicKey;
import org.joda.time.DateTime;
import org.joda.time.DateTimeConstants;
import org.joda.time.Duration;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
/** Unit tests for {@link RdeStagingAction}. */
-@RunWith(JUnit4.class)
public class RdeStagingActionTest extends MapreduceTestCase This tests the mapping between {@link Registrar} and {@link XjcRdeRegistrar} as well as some
* exceptional conditions.
*/
-@RunWith(JUnit4.class)
public class RegistrarToXjcConverterTest {
- @Rule
+ @RegisterExtension
public final AppEngineRule appEngine = AppEngineRule.builder().withDatastoreAndCloudSql().build();
- @Rule
- public final InjectRule inject = new InjectRule();
+ @RegisterExtension public final InjectRule inject = new InjectRule();
- Registrar registrar;
+ private Registrar registrar;
- @Before
- public void init() {
+ @BeforeEach
+ void beforeEach() {
registrar = new Registrar.Builder()
.setClientId("GoblinMarket")
.setRegistrarName("Maids heard the goblins cry: Come buy, come buy:")
@@ -94,7 +90,7 @@ public class RegistrarToXjcConverterTest {
}
@Test
- public void test_convertRegistrar() {
+ void test_convertRegistrar() {
XjcRdeRegistrar bean = convertRegistrar(registrar);
assertThat(bean.getId()).isEqualTo("GoblinMarket");
@@ -140,13 +136,13 @@ public class RegistrarToXjcConverterTest {
}
@Test
- public void test_convertRegistrar_disabledStateMeansTerminated() {
+ void test_convertRegistrar_disabledStateMeansTerminated() {
XjcRdeRegistrar bean = convertRegistrar(registrar.asBuilder().setState(State.DISABLED).build());
assertThat(bean.getStatus()).isEqualTo(XjcRdeRegistrarStatusType.TERMINATED);
}
@Test
- public void test_convertRegistrar_handlesAllRegistrarStates() {
+ void test_convertRegistrar_handlesAllRegistrarStates() {
for (State state : Registrar.State.values()) {
// This will throw an exception if it can't handle the chosen state.
convertRegistrar(registrar.asBuilder().setState(state).build());
@@ -154,7 +150,7 @@ public class RegistrarToXjcConverterTest {
}
@Test
- public void testMarshal() throws Exception {
+ void testMarshal() throws Exception {
marshalStrict(RegistrarToXjcConverter.convert(registrar), new ByteArrayOutputStream(), UTF_8);
}
}
diff --git a/core/src/test/java/google/registry/rde/RydeCompressionTest.java b/core/src/test/java/google/registry/rde/RydeCompressionTest.java
index d587e3902..b77319a23 100644
--- a/core/src/test/java/google/registry/rde/RydeCompressionTest.java
+++ b/core/src/test/java/google/registry/rde/RydeCompressionTest.java
@@ -22,15 +22,13 @@ import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.Test;
-@RunWith(JUnit4.class)
-public final class RydeCompressionTest {
+/** Unit tests for {@link RydeCompression} */
+final class RydeCompressionTest {
@Test
- public void testCompression_decompression() throws Exception {
+ void testCompression_decompression() throws Exception {
byte[] expected = "Testing 1, 2, 3".getBytes(UTF_8);
ByteArrayOutputStream output = new ByteArrayOutputStream();
diff --git a/core/src/test/java/google/registry/rde/RydeEncryptionTest.java b/core/src/test/java/google/registry/rde/RydeEncryptionTest.java
index b306bbe5c..073ebde0f 100644
--- a/core/src/test/java/google/registry/rde/RydeEncryptionTest.java
+++ b/core/src/test/java/google/registry/rde/RydeEncryptionTest.java
@@ -30,18 +30,16 @@ import java.io.OutputStream;
import java.util.Base64;
import org.bouncycastle.openpgp.PGPException;
import org.bouncycastle.openpgp.PGPKeyPair;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
-@RunWith(JUnit4.class)
+/** Unit tests for {@link RydeEncryption} */
public final class RydeEncryptionTest {
- @Rule public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
+ @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
@Test
- public void testSuccess_oneReceiver_decryptWithCorrectKey() throws Exception {
+ void testSuccess_oneReceiver_decryptWithCorrectKey() throws Exception {
FakeKeyringModule keyringModule = new FakeKeyringModule();
PGPKeyPair key = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
byte[] expected = "Testing 1, 2, 3".getBytes(UTF_8);
@@ -60,7 +58,7 @@ public final class RydeEncryptionTest {
}
@Test
- public void testFail_oneReceiver_decryptWithWrongKey() throws Exception {
+ void testFail_oneReceiver_decryptWithWrongKey() throws Exception {
FakeKeyringModule keyringModule = new FakeKeyringModule();
PGPKeyPair key = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
PGPKeyPair wrongKey = keyringModule.get("rde-unittest-dsa@registry.test", ENCRYPT);
@@ -86,7 +84,7 @@ public final class RydeEncryptionTest {
}
@Test
- public void testSuccess_twoReceivers() throws Exception {
+ void testSuccess_twoReceivers() throws Exception {
FakeKeyringModule keyringModule = new FakeKeyringModule();
PGPKeyPair key1 = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
PGPKeyPair key2 = keyringModule.get("rde-unittest-dsa@registry.test", ENCRYPT);
@@ -113,7 +111,7 @@ public final class RydeEncryptionTest {
}
@Test
- public void testSuccess_decryptHasntChanged() throws Exception {
+ void testSuccess_decryptHasntChanged() throws Exception {
FakeKeyringModule keyringModule = new FakeKeyringModule();
PGPKeyPair key = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
byte[] expected = "Testing 1, 2, 3".getBytes(UTF_8);
@@ -134,7 +132,7 @@ public final class RydeEncryptionTest {
}
@Test
- public void testSuccess_oneReceiver_withIntegrityPacket() throws Exception {
+ void testSuccess_oneReceiver_withIntegrityPacket() throws Exception {
FakeKeyringModule keyringModule = new FakeKeyringModule();
PGPKeyPair key = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
byte[] expected = "Testing 1, 2, 3".getBytes(UTF_8);
diff --git a/core/src/test/java/google/registry/rde/RydeFileEncodingTest.java b/core/src/test/java/google/registry/rde/RydeFileEncodingTest.java
index 821de2776..2b0fcac4d 100644
--- a/core/src/test/java/google/registry/rde/RydeFileEncodingTest.java
+++ b/core/src/test/java/google/registry/rde/RydeFileEncodingTest.java
@@ -22,15 +22,13 @@ import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.OutputStream;
import org.joda.time.DateTime;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
+import org.junit.jupiter.api.Test;
-@RunWith(JUnit4.class)
-public final class RydeFileEncodingTest {
+/** Unit tests for {@link RydeFileEncoding}. */
+final class RydeFileEncodingTest {
@Test
- public void testEncodeDecode() throws Exception {
+ void testEncodeDecode() throws Exception {
byte[] expectedContent = "Testing 1, 2, 3".getBytes(UTF_8);
String expectedFilename = "myFile.txt";
DateTime expectedModified = DateTime.parse("2015-12-25T06:30:00.000Z");
diff --git a/core/src/test/java/google/registry/rde/RydeGpgIntegrationTest.java b/core/src/test/java/google/registry/rde/RydeGpgIntegrationTest.java
index d323c254c..9cc0ab169 100644
--- a/core/src/test/java/google/registry/rde/RydeGpgIntegrationTest.java
+++ b/core/src/test/java/google/registry/rde/RydeGpgIntegrationTest.java
@@ -14,13 +14,14 @@
package google.registry.rde;
-import static com.google.common.base.Strings.repeat;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
import static google.registry.testing.SystemInfo.hasCommand;
import static java.nio.charset.StandardCharsets.UTF_8;
import static org.junit.Assume.assumeTrue;
+import com.google.common.base.Strings;
+import com.google.common.collect.ImmutableList;
import com.google.common.flogger.FluentLogger;
import com.google.common.io.CharStreams;
import google.registry.keyring.api.Keyring;
@@ -34,75 +35,74 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
+import java.util.stream.Stream;
import org.bouncycastle.openpgp.PGPKeyPair;
import org.bouncycastle.openpgp.PGPPublicKey;
import org.joda.time.DateTime;
-import org.junit.Rule;
-import org.junit.experimental.theories.DataPoints;
-import org.junit.experimental.theories.Theories;
-import org.junit.experimental.theories.Theory;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
/** GPG combinatorial integration tests for the Ryde classes. */
-@RunWith(Theories.class)
-@SuppressWarnings("resource")
public class RydeGpgIntegrationTest {
private static final FluentLogger logger = FluentLogger.forEnclosingClass();
- @Rule
- public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
+ @RegisterExtension public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
- @Rule
- public final GpgSystemCommandRule gpg = new GpgSystemCommandRule(
- RdeTestData.loadBytes("pgp-public-keyring.asc"),
- RdeTestData.loadBytes("pgp-private-keyring-escrow.asc"));
+ @RegisterExtension
+ public final GpgSystemCommandRule gpg =
+ new GpgSystemCommandRule(
+ RdeTestData.loadBytes("pgp-public-keyring.asc"),
+ RdeTestData.loadBytes("pgp-private-keyring-escrow.asc"));
private final FakeKeyringModule keyringFactory = new FakeKeyringModule();
- @DataPoints
- public static GpgCommand[] commands = new GpgCommand[] {
- new GpgCommand("gpg"),
- new GpgCommand("gpg2"),
- };
+ private static final ImmutableList This rule creates a isolated environment for running the {@code gpg} command inside system
* integration tests. It reduces a lot of the boilerplate of setting up the shell environment and
* importing your keyrings into a temporary config folder.
- *
- * @see ExternalResource
*/
-public final class GpgSystemCommandRule extends ExternalResource {
+public final class GpgSystemCommandRule implements BeforeEachCallback, AfterEachCallback {
private static final File DEV_NULL = new File("/dev/null");
private static final String TEMP_FILE_PREFIX = "gpgtest";
@@ -83,7 +83,7 @@ public final class GpgSystemCommandRule extends ExternalResource {
}
@Override
- protected void before() throws IOException, InterruptedException {
+ public void beforeEach(ExtensionContext context) throws IOException, InterruptedException {
checkState(Objects.equals(cwd, DEV_NULL));
String tmpRootDirString = System.getenv("TMPDIR");
// Create the working directory for the forked process on Temp file system. Create under the
@@ -123,7 +123,7 @@ public final class GpgSystemCommandRule extends ExternalResource {
}
@Override
- protected void after() {
+ public void afterEach(ExtensionContext context) {
// TODO(weiminyu): we should delete the cwd tree.
cwd = DEV_NULL;
conf = DEV_NULL;
diff --git a/core/src/test/java/google/registry/testing/mapreduce/MapreduceTestCase.java b/core/src/test/java/google/registry/testing/mapreduce/MapreduceTestCase.java
index c1ec1d7b8..86532f5ed 100644
--- a/core/src/test/java/google/registry/testing/mapreduce/MapreduceTestCase.java
+++ b/core/src/test/java/google/registry/testing/mapreduce/MapreduceTestCase.java
@@ -52,9 +52,16 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.junit.Before;
import org.junit.Rule;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.extension.RegisterExtension;
import org.mockito.Mock;
+import org.mockito.Mockito;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.junit.jupiter.MockitoSettings;
+import org.mockito.quality.Strictness;
/**
* Base test class for mapreduces.
@@ -67,6 +74,8 @@ import org.mockito.junit.MockitoRule;
*
* @param The maxTasks parameter determines how many tasks (at most) will be run. If maxTasks is
* absent(), all tasks are run until the queue is empty. If maxTasks is zero, no tasks are run.
*/
- protected void executeTasks(
- String queueName, @Nullable FakeClock clock, Optional