diff --git a/core/src/main/java/google/registry/model/tld/Tld.java b/core/src/main/java/google/registry/model/tld/Tld.java index 75870bdaa..4f5dd65f7 100644 --- a/core/src/main/java/google/registry/model/tld/Tld.java +++ b/core/src/main/java/google/registry/model/tld/Tld.java @@ -1034,12 +1034,13 @@ public class Tld extends ImmutableObject implements Buildable, UnsafeSerializabl return this; } - public static final Pattern ROID_SUFFIX_PATTERN = Pattern.compile("^[A-Z\\d_]{1,8}$"); + public static final Pattern ROID_SUFFIX_PATTERN = Pattern.compile("^[A-Z\\d]{1,8}$"); public Builder setRoidSuffix(String roidSuffix) { checkArgument( ROID_SUFFIX_PATTERN.matcher(roidSuffix).matches(), - "ROID suffix must be in format %s", + "ROID suffix %s must be in format %s", + roidSuffix, ROID_SUFFIX_PATTERN.pattern()); getInstance().roidSuffix = roidSuffix; return this; diff --git a/core/src/test/java/google/registry/beam/billing/InvoicingPipelineTest.java b/core/src/test/java/google/registry/beam/billing/InvoicingPipelineTest.java index 6cad4a928..07ba124b6 100644 --- a/core/src/test/java/google/registry/beam/billing/InvoicingPipelineTest.java +++ b/core/src/test/java/google/registry/beam/billing/InvoicingPipelineTest.java @@ -335,7 +335,7 @@ class InvoicingPipelineTest { .build(); persistResource(registrar); Tld test = - newTld("test", "_TEST", ImmutableSortedMap.of(START_OF_TIME, GENERAL_AVAILABILITY)) + newTld("test", "TEST", ImmutableSortedMap.of(START_OF_TIME, GENERAL_AVAILABILITY)) .asBuilder() .setInvoicingEnabled(true) .build(); @@ -391,7 +391,7 @@ class InvoicingPipelineTest { // Test that comments are removed from the .sql file correctly assertThat(InvoicingPipeline.makeCloudSqlQuery("2017-10")) .isEqualTo( - """ +""" SELECT b, r FROM BillingEvent b JOIN Registrar r ON b.clientId = r.registrarId @@ -449,13 +449,13 @@ AND cr.id IS NULL persistResource(registrar3); Tld test = - newTld("test", "_TEST", ImmutableSortedMap.of(START_OF_TIME, GENERAL_AVAILABILITY)) + newTld("test", "TEST", ImmutableSortedMap.of(START_OF_TIME, GENERAL_AVAILABILITY)) .asBuilder() .setInvoicingEnabled(true) .build(); persistResource(test); Tld hello = - newTld("hello", "_HELLO", ImmutableSortedMap.of(START_OF_TIME, GENERAL_AVAILABILITY)) + newTld("hello", "HELLO", ImmutableSortedMap.of(START_OF_TIME, GENERAL_AVAILABILITY)) .asBuilder() .setInvoicingEnabled(true) .build(); diff --git a/core/src/test/java/google/registry/beam/common/RegistryJpaReadTest.java b/core/src/test/java/google/registry/beam/common/RegistryJpaReadTest.java index d2742f1ed..83e65021e 100644 --- a/core/src/test/java/google/registry/beam/common/RegistryJpaReadTest.java +++ b/core/src/test/java/google/registry/beam/common/RegistryJpaReadTest.java @@ -163,7 +163,7 @@ public class RegistryJpaReadTest { } private void setupForJoinQuery() { - Tld registry = newTld("com", "ABCD_APP"); + Tld registry = newTld("com", "ABCDAPP"); Registrar registrar = makeRegistrar1() .asBuilder() diff --git a/core/src/test/java/google/registry/model/tld/TldTest.java b/core/src/test/java/google/registry/model/tld/TldTest.java index 37a599d0b..9e3db6e70 100644 --- a/core/src/test/java/google/registry/model/tld/TldTest.java +++ b/core/src/test/java/google/registry/model/tld/TldTest.java @@ -751,7 +751,9 @@ public final class TldTest extends EntityTestCase { assertThrows( IllegalArgumentException.class, () -> Tld.get("tld").asBuilder().setRoidSuffix("123456789")); - assertThat(e).hasMessageThat().isEqualTo("ROID suffix must be in format ^[A-Z\\d_]{1,8}$"); + assertThat(e) + .hasMessageThat() + .isEqualTo("ROID suffix 123456789 must be in format ^[A-Z\\d]{1,8}$"); } @Test @@ -766,6 +768,12 @@ public final class TldTest extends EntityTestCase { IllegalArgumentException.class, () -> Tld.get("tld").asBuilder().setRoidSuffix("ABC-DEF")); } + @Test + void testFailure_roidSuffixContainsUnderscores() { + assertThrows( + IllegalArgumentException.class, () -> Tld.get("tld").asBuilder().setRoidSuffix("ABC_DEF")); + } + @Test void testSuccess_setDefaultPromoTokens() { Tld registry = Tld.get("tld"); diff --git a/core/src/test/java/google/registry/rdap/RdapDomainActionTest.java b/core/src/test/java/google/registry/rdap/RdapDomainActionTest.java index ce7868966..1c665bf7f 100644 --- a/core/src/test/java/google/registry/rdap/RdapDomainActionTest.java +++ b/core/src/test/java/google/registry/rdap/RdapDomainActionTest.java @@ -246,7 +246,7 @@ class RdapDomainActionTest extends RdapActionBaseTestCase { .isEqualTo( addDomainBoilerplateNotices( jsonFileBuilder() - .addDomain("cat.1.tld", "D-1_TLD") + .addDomain("cat.1.tld", "D-1TLD") .addNameserver("ns1.cat.lol", "2-ROID") .addNameserver("ns2.cat.lol", "4-ROID") .addRegistrar("Multilevel Registrar") diff --git a/core/src/test/java/google/registry/rdap/RdapDomainSearchActionTest.java b/core/src/test/java/google/registry/rdap/RdapDomainSearchActionTest.java index 9b9d3fa64..36ddf1d1d 100644 --- a/core/src/test/java/google/registry/rdap/RdapDomainSearchActionTest.java +++ b/core/src/test/java/google/registry/rdap/RdapDomainSearchActionTest.java @@ -732,7 +732,7 @@ class RdapDomainSearchActionTest extends RdapSearchActionTestCase tldStates) { // Coerce the TLD string into a valid ROID suffix. String roidSuffix = - Ascii.toUpperCase(tld.replaceFirst(ACE_PREFIX_REGEX, "").replace('.', '_')) - .replace('-', '_'); + Ascii.toUpperCase(tld.replaceFirst(ACE_PREFIX_REGEX, "").replace(".", "")).replace("-", ""); return createTld( tld, roidSuffix.length() > 8 ? roidSuffix.substring(0, 8) : roidSuffix, tldStates); } diff --git a/core/src/test/java/google/registry/tools/ConfigureTldCommandTest.java b/core/src/test/java/google/registry/tools/ConfigureTldCommandTest.java index 8aa8b810e..6416c846b 100644 --- a/core/src/test/java/google/registry/tools/ConfigureTldCommandTest.java +++ b/core/src/test/java/google/registry/tools/ConfigureTldCommandTest.java @@ -368,7 +368,7 @@ public class ConfigureTldCommandTest extends CommandTestCase runCommandForced("--input=" + tldFile)); - assertThat(thrown.getMessage()).isEqualTo("ROID suffix must be in format ^[A-Z\\d_]{1,8}$"); + assertThat(thrown.getMessage()).isEqualTo("ROID suffix must be in format ^[A-Z\\d]{1,8}$"); } @Test