Rename visibleInWhois fields to visibleInRdap (#2863)

Still part of b/454947209, removing references to WHOIS where we can. We
keep the registrar type and the column names (at least for now) because
changing those is much more complicated.
This commit is contained in:
gbrodman
2025-11-04 17:37:44 +00:00
committed by GitHub
parent 847ef12a4f
commit dee132d04b
28 changed files with 271 additions and 297 deletions
@@ -221,8 +221,8 @@ class SendExpiringCertificateNotificationEmailActionTest {
.setPhoneNumber("+1.3105551213")
.setFaxNumber("+1.3105551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.build());
persistResources(contacts);
RuntimeException thrown =
@@ -511,8 +511,8 @@ class SendExpiringCertificateNotificationEmailActionTest {
.setPhoneNumber("+1.3105551213")
.setFaxNumber("+1.3105551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -529,8 +529,8 @@ class SendExpiringCertificateNotificationEmailActionTest {
.setPhoneNumber("+1.3105551213")
.setFaxNumber("+1.3105551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -547,7 +547,7 @@ class SendExpiringCertificateNotificationEmailActionTest {
.setPhoneNumber("+1.3105551215")
.setFaxNumber("+1.3105551216")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ADMIN))
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsTech(true)
.build());
persistResources(contacts);
assertThat(action.getEmailAddresses(registrar, Type.TECH))
@@ -168,8 +168,8 @@ public class SyncRegistrarsSheetTest {
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ADMIN))
// Purposely flip the internal/external admin/tech
// distinction to make sure we're not relying on it. Sigh.
.setVisibleInWhoisAsAdmin(false)
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsAdmin(false)
.setVisibleInRdapAsTech(true)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -201,9 +201,9 @@ public class SyncRegistrarsSheetTest {
contact@example.com
Tel: +1.1234567890
Types: [ADMIN, BILLING]
Visible in registrar WHOIS query as Admin contact: No
Visible in registrar WHOIS query as Technical contact: No
Phone number and email visible in domain WHOIS query as Registrar Abuse contact\
Visible in registrar RDAP query as Admin contact: No
Visible in registrar RDAP query as Technical contact: No
Phone number and email visible in domain RDAP query as Registrar Abuse contact\
info: No
John Doe
@@ -211,9 +211,9 @@ public class SyncRegistrarsSheetTest {
Tel: +1.1234567890
Fax: +1.1234567891
Types: [ADMIN]
Visible in registrar WHOIS query as Admin contact: No
Visible in registrar WHOIS query as Technical contact: Yes
Phone number and email visible in domain WHOIS query as Registrar Abuse contact\
Visible in registrar RDAP query as Admin contact: No
Visible in registrar RDAP query as Technical contact: Yes
Phone number and email visible in domain RDAP query as Registrar Abuse contact\
info: No
""");
assertThat(row)
@@ -223,9 +223,9 @@ public class SyncRegistrarsSheetTest {
Jane Smith
pride@example.net
Types: [TECH]
Visible in registrar WHOIS query as Admin contact: No
Visible in registrar WHOIS query as Technical contact: No
Phone number and email visible in domain WHOIS query as Registrar Abuse contact\
Visible in registrar RDAP query as Admin contact: No
Visible in registrar RDAP query as Technical contact: No
Phone number and email visible in domain RDAP query as Registrar Abuse contact\
info: No
""");
assertThat(row).containsEntry("marketingContacts", "");
@@ -240,9 +240,9 @@ public class SyncRegistrarsSheetTest {
contact@example.com
Tel: +1.1234567890
Types: [ADMIN, BILLING]
Visible in registrar WHOIS query as Admin contact: No
Visible in registrar WHOIS query as Technical contact: No
Phone number and email visible in domain WHOIS query as Registrar Abuse contact\
Visible in registrar RDAP query as Admin contact: No
Visible in registrar RDAP query as Technical contact: No
Phone number and email visible in domain RDAP query as Registrar Abuse contact\
info: No
""");
assertThat(row).containsEntry("contactsMarkedAsWhoisAdmin", "");
@@ -255,9 +255,9 @@ public class SyncRegistrarsSheetTest {
Tel: +1.1234567890
Fax: +1.1234567891
Types: [ADMIN]
Visible in registrar WHOIS query as Admin contact: No
Visible in registrar WHOIS query as Technical contact: Yes
Phone number and email visible in domain WHOIS query as Registrar Abuse contact\
Visible in registrar RDAP query as Admin contact: No
Visible in registrar RDAP query as Technical contact: Yes
Phone number and email visible in domain RDAP query as Registrar Abuse contact\
info: No
""");
assertThat(row).containsEntry("emailAddress", "nowhere@example.org");
@@ -126,8 +126,8 @@ class RegistrarTest extends EntityTestCase {
.setRegistrar(registrar)
.setName("John Abused")
.setEmailAddress("johnabuse@example.com")
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.setPhoneNumber("+1.2125551213")
.setFaxNumber("+1.2125551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ABUSE, RegistrarPoc.Type.ADMIN))
@@ -323,8 +323,8 @@ class RegistrarTest extends EntityTestCase {
.setRegistrar(registrar)
.setName("Jake Tech")
.setEmailAddress("jaketech@example.com")
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.setPhoneNumber("+1.2125551213")
.setFaxNumber("+1.2125551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH))
@@ -335,8 +335,8 @@ class RegistrarTest extends EntityTestCase {
.setRegistrar(registrar)
.setName("Jim Tech-Abuse")
.setEmailAddress("jimtechAbuse@example.com")
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.setPhoneNumber("+1.2125551213")
.setFaxNumber("+1.2125551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH, RegistrarPoc.Type.ABUSE))
@@ -407,8 +407,8 @@ public abstract class JpaTransactionManagerExtension
return new RegistrarPoc.Builder()
.setRegistrar(makeRegistrar1())
.setName("Jane Doe")
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.setEmailAddress("janedoe@theregistrar.com")
.setPhoneNumber("+1.1234567890")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ADMIN))
@@ -198,8 +198,8 @@ class RdapJsonFormatterTest {
.setPhoneNumber("+1.2125551217")
.setFaxNumber("+1.2125551218")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ADMIN))
.setVisibleInWhoisAsAdmin(false)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(false)
.setVisibleInRdapAsTech(false)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -207,8 +207,8 @@ class RdapJsonFormatterTest {
.setEmailAddress("johndoe@example.com")
.setFaxNumber("+1.2125551213")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ADMIN))
.setVisibleInWhoisAsAdmin(false)
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsAdmin(false)
.setVisibleInRdapAsTech(true)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -216,8 +216,8 @@ class RdapJsonFormatterTest {
.setEmailAddress("janedoe@example.com")
.setPhoneNumber("+1.2125551215")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH, RegistrarPoc.Type.ADMIN))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -226,8 +226,8 @@ class RdapJsonFormatterTest {
.setPhoneNumber("+1.2125551217")
.setFaxNumber("+1.2125551218")
.setTypes(ImmutableSet.of(RegistrarPoc.Type.BILLING))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.build());
}
@@ -354,13 +354,13 @@ class Spec11EmailUtilsTest {
}
@Test
void testSuccess_useWhoisAbuseEmailIfAvailable() throws Exception {
// if John Doe is the whois abuse contact, email them instead of the regular email
void testSuccess_useRdapAbuseEmailIfAvailable() throws Exception {
// if John Doe is the RDAP abuse contact, email them instead of the regular email
persistResource(
makeRegistrarContact2()
.asBuilder()
.setEmailAddress("johndoe@theregistrar.com")
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
emailUtils.emailSpec11Reports(
date,
@@ -53,9 +53,9 @@ class RegistrarPocTest {
.setPhoneNumber("+1.2125650000")
.setFaxNumber("+1.2125650001")
.setTypes(ImmutableSet.of(WHOIS))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInDomainWhoisAsAbuse(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.setVisibleInDomainRdapAsAbuse(false)
.build();
}
@@ -48,7 +48,7 @@ import java.util.Optional;
import javax.annotation.Nullable;
import org.joda.time.DateTime;
/** Test helper methods for the rdap and whois packages. */
/** Test helper methods for the RDAP package. */
public final class FullFieldsTestEntityHelper {
public static Registrar makeRegistrar(
@@ -100,8 +100,8 @@ public final class FullFieldsTestEntityHelper {
.setTypes(ImmutableSet.of(RegistrarPoc.Type.ADMIN))
// Purposely flip the internal/external admin/tech
// distinction to make sure we're not relying on it. Sigh.
.setVisibleInWhoisAsAdmin(false)
.setVisibleInWhoisAsTech(true)
.setVisibleInRdapAsAdmin(false)
.setVisibleInRdapAsTech(true)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -112,8 +112,8 @@ public final class FullFieldsTestEntityHelper {
.setTypes(ImmutableSet.of(RegistrarPoc.Type.TECH))
// Purposely flip the internal/external admin/tech
// distinction to make sure we're not relying on it. Sigh.
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.build(),
new RegistrarPoc.Builder()
.setRegistrar(registrar)
@@ -121,7 +121,7 @@ public final class FullFieldsTestEntityHelper {
.setEmailAddress("jakedoe@example.com")
.setPhoneNumber("+1.2125551216")
.setFaxNumber("+1.2125551216")
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
}
@@ -59,7 +59,7 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setName("John Doe")
.setEmailAddress("john.doe@example.com")
.setTypes(ImmutableSet.of(ADMIN))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInRdapAsAdmin(true)
.build())));
runCommandForced("--mode=LIST", "--output=" + output, "NewRegistrar");
assertThat(Files.readAllLines(Paths.get(output), UTF_8))
@@ -67,9 +67,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
"John Doe",
"john.doe@example.com",
"Types: [ADMIN]",
"Visible in registrar WHOIS query as Admin contact: Yes",
"Visible in registrar WHOIS query as Technical contact: No",
"Phone number and email visible in domain WHOIS query as "
"Visible in registrar RDAP query as Admin contact: Yes",
"Visible in registrar RDAP query as Technical contact: No",
"Phone number and email visible in domain RDAP query as "
+ "Registrar Abuse contact info: No");
}
@@ -83,9 +83,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setName("Judith Doe")
.setEmailAddress("judith.doe@example.com")
.setTypes(ImmutableSet.of(WHOIS))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInDomainWhoisAsAbuse(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.setVisibleInDomainRdapAsAbuse(false)
.build());
persistResources(contacts);
runCommandForced(
@@ -95,9 +95,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
"--phone=+1.2125650000",
"--fax=+1.2125650001",
"--contact_type=WHOIS",
"--visible_in_whois_as_admin=true",
"--visible_in_whois_as_tech=false",
"--visible_in_domain_whois_as_abuse=false",
"--visible_in_rdap_as_admin=true",
"--visible_in_rdap_as_tech=false",
"--visible_in_domain_rdap_as_abuse=false",
"NewRegistrar");
RegistrarPoc registrarPoc = loadRegistrar("NewRegistrar").getContacts().asList().get(1);
assertAboutImmutableObjects()
@@ -110,15 +110,15 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setPhoneNumber("+1.2125650000")
.setFaxNumber("+1.2125650001")
.setTypes(ImmutableSet.of(WHOIS))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInDomainWhoisAsAbuse(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.setVisibleInDomainRdapAsAbuse(false)
.build(),
"id");
}
@Test
void testUpdate_unsetOtherWhoisAbuseFlags() throws Exception {
void testUpdate_unsetOtherRdapAbuseFlags() throws Exception {
Registrar registrar = loadRegistrar("NewRegistrar");
persistResource(
new RegistrarPoc.Builder()
@@ -131,33 +131,33 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setRegistrar(registrar)
.setName("Johnna Doe")
.setEmailAddress("johnna.doe@example.com")
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
runCommandForced(
"--mode=UPDATE",
"--email=john.doe@example.com",
"--visible_in_domain_whois_as_abuse=true",
"--visible_in_domain_rdap_as_abuse=true",
"NewRegistrar");
ImmutableList<RegistrarPoc> registrarPocs =
loadRegistrar("NewRegistrar").getContacts().asList();
for (RegistrarPoc registrarPoc : registrarPocs) {
if ("John Doe".equals(registrarPoc.getName())) {
assertThat(registrarPoc.getVisibleInDomainWhoisAsAbuse()).isTrue();
assertThat(registrarPoc.getVisibleInDomainRdapAsAbuse()).isTrue();
} else {
assertThat(registrarPoc.getVisibleInDomainWhoisAsAbuse()).isFalse();
assertThat(registrarPoc.getVisibleInDomainRdapAsAbuse()).isFalse();
}
}
}
@Test
void testUpdate_cannotUnsetOnlyWhoisAbuseContact() {
void testUpdate_cannotUnsetOnlyRdapAbuseContact() {
Registrar registrar = loadRegistrar("NewRegistrar");
persistResource(
new RegistrarPoc.Builder()
.setRegistrar(registrar)
.setName("John Doe")
.setEmailAddress("john.doe@example.com")
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
IllegalArgumentException thrown =
assertThrows(
@@ -166,13 +166,13 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
runCommandForced(
"--mode=UPDATE",
"--email=john.doe@example.com",
"--visible_in_domain_whois_as_abuse=false",
"--visible_in_domain_rdap_as_abuse=false",
"NewRegistrar"));
assertThat(thrown)
.hasMessageThat()
.contains("Cannot clear visible_in_domain_whois_as_abuse flag");
.contains("Cannot clear visible_in_domain_rdap_as_abuse flag");
RegistrarPoc registrarPoc = loadRegistrar("NewRegistrar").getContacts().asList().get(1);
assertThat(registrarPoc.getVisibleInDomainWhoisAsAbuse()).isTrue();
assertThat(registrarPoc.getVisibleInDomainRdapAsAbuse()).isTrue();
}
@Test
@@ -187,9 +187,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setPhoneNumber("123-456-7890")
.setFaxNumber("123-456-7890")
.setTypes(ImmutableSet.of(ADMIN, ABUSE))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
runCommandForced("--mode=UPDATE", "--email=john.doe@example.com", "NewRegistrar");
RegistrarPoc registrarPoc = loadRegistrar("NewRegistrar").getContacts().asList().get(1);
@@ -198,12 +198,12 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
assertThat(registrarPoc.getPhoneNumber()).isEqualTo(existingContact.getPhoneNumber());
assertThat(registrarPoc.getFaxNumber()).isEqualTo(existingContact.getFaxNumber());
assertThat(registrarPoc.getTypes()).isEqualTo(existingContact.getTypes());
assertThat(registrarPoc.getVisibleInWhoisAsAdmin())
.isEqualTo(existingContact.getVisibleInWhoisAsAdmin());
assertThat(registrarPoc.getVisibleInWhoisAsTech())
.isEqualTo(existingContact.getVisibleInWhoisAsTech());
assertThat(registrarPoc.getVisibleInDomainWhoisAsAbuse())
.isEqualTo(existingContact.getVisibleInDomainWhoisAsAbuse());
assertThat(registrarPoc.getVisibleInRdapAsAdmin())
.isEqualTo(existingContact.getVisibleInRdapAsAdmin());
assertThat(registrarPoc.getVisibleInRdapAsTech())
.isEqualTo(existingContact.getVisibleInRdapAsTech());
assertThat(registrarPoc.getVisibleInDomainRdapAsAbuse())
.isEqualTo(existingContact.getVisibleInDomainRdapAsAbuse());
}
@Test
@@ -217,9 +217,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setPhoneNumber("123-456-7890")
.setFaxNumber("123-456-7890")
.setTypes(ImmutableSet.of(ADMIN, ABUSE))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
runCommandForced(
"--mode=UPDATE",
@@ -254,9 +254,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
"--name=Jim Doe",
"--email=jim.doe@example.com",
"--contact_type=ADMIN,ABUSE",
"--visible_in_whois_as_admin=true",
"--visible_in_whois_as_tech=false",
"--visible_in_domain_whois_as_abuse=true",
"--visible_in_rdap_as_admin=true",
"--visible_in_rdap_as_tech=false",
"--visible_in_domain_rdap_as_abuse=true",
"NewRegistrar");
RegistrarPoc registrarPoc = loadRegistrar("NewRegistrar").getContacts().asList().get(1);
assertAboutImmutableObjects()
@@ -267,9 +267,9 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
.setName("Jim Doe")
.setEmailAddress("jim.doe@example.com")
.setTypes(ImmutableSet.of(ADMIN, ABUSE))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.setVisibleInDomainRdapAsAbuse(true)
.build(),
"id");
}
@@ -282,16 +282,16 @@ class RegistrarPocCommandTest extends CommandTestCase<RegistrarPocCommand> {
}
@Test
void testDelete_failsOnDomainWhoisAbuseContact() {
void testDelete_failsOnDomainRdapAbuseContact() {
RegistrarPoc registrarPoc = loadRegistrar("NewRegistrar").getContacts().asList().getFirst();
persistResource(registrarPoc.asBuilder().setVisibleInDomainWhoisAsAbuse(true).build());
persistResource(registrarPoc.asBuilder().setVisibleInDomainRdapAsAbuse(true).build());
IllegalArgumentException thrown =
assertThrows(
IllegalArgumentException.class,
() ->
runCommandForced(
"--mode=DELETE", "--email=janedoe@theregistrar.com", "NewRegistrar"));
assertThat(thrown).hasMessageThat().contains("Cannot delete the domain WHOIS abuse contact");
assertThat(thrown).hasMessageThat().contains("Cannot delete the domain RDAP abuse contact");
assertThat(loadRegistrar("NewRegistrar").getContacts()).isNotEmpty();
}
@@ -108,7 +108,7 @@ class UpdateRegistrarCommandTest extends CommandTestCase<UpdateRegistrarCommand>
@Test
void testSuccess_allowedTlds() throws Exception {
persistWhoisAbuseContact();
persistRdapAbuseContact();
createTlds("xn--q9jyb4c", "foobar");
persistResource(
loadRegistrar("NewRegistrar")
@@ -126,7 +126,7 @@ class UpdateRegistrarCommandTest extends CommandTestCase<UpdateRegistrarCommand>
@Test
void testSuccess_addAllowedTlds() throws Exception {
persistWhoisAbuseContact();
persistRdapAbuseContact();
createTlds("xn--q9jyb4c", "foo", "bar");
persistResource(
loadRegistrar("NewRegistrar")
@@ -144,7 +144,7 @@ class UpdateRegistrarCommandTest extends CommandTestCase<UpdateRegistrarCommand>
@Test
void testSuccess_addAllowedTldsWithDupes() throws Exception {
persistWhoisAbuseContact();
persistRdapAbuseContact();
createTlds("xn--q9jyb4c", "foo", "bar");
persistResource(
loadRegistrar("NewRegistrar")
@@ -968,11 +968,11 @@ class UpdateRegistrarCommandTest extends CommandTestCase<UpdateRegistrarCommand>
.isEqualTo("Provided email lolcat is not a valid email address");
}
private void persistWhoisAbuseContact() {
private void persistRdapAbuseContact() {
persistResource(
JpaTransactionManagerExtension.makeRegistrarContact1()
.asBuilder()
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInDomainRdapAsAbuse(true)
.build());
}
}
@@ -135,7 +135,7 @@ class ConsoleUpdateRegistrarActionTest extends ConsoleActionBaseTestCase {
}
@Test
void testFails_missingWhoisContact() throws IOException {
void testFails_missingRdapContact() throws IOException {
RegistryEnvironment.PRODUCTION.setup(systemPropertyExtension);
var action =
createAction(
@@ -148,11 +148,11 @@ class ConsoleUpdateRegistrarActionTest extends ConsoleActionBaseTestCase {
action.run();
assertThat(response.getStatus()).isEqualTo(SC_BAD_REQUEST);
assertThat((String) response.getPayload())
.contains("Cannot modify allowed TLDs if there is no WHOIS abuse contact set");
.contains("Cannot modify allowed TLDs if there is no RDAP abuse contact set");
}
@Test
void testSuccess_presentWhoisContact() throws IOException {
void testSuccess_presentRdapContact() throws IOException {
RegistryEnvironment.PRODUCTION.setup(systemPropertyExtension);
RegistrarPoc contact =
new RegistrarPoc.Builder()
@@ -162,9 +162,9 @@ class ConsoleUpdateRegistrarActionTest extends ConsoleActionBaseTestCase {
.setPhoneNumber("+1.9999999999")
.setFaxNumber("+1.9999999991")
.setTypes(ImmutableSet.of(WHOIS))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(true)
.setVisibleInDomainWhoisAsAbuse(true)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(true)
.setVisibleInDomainRdapAsAbuse(true)
.build();
persistResource(contact);
var action =
@@ -14,7 +14,6 @@
package google.registry.ui.server.console.settings;
import static com.google.common.collect.ImmutableList.toImmutableList;
import static com.google.common.truth.Truth.assertThat;
import static google.registry.model.registrar.RegistrarPoc.Type.ABUSE;
import static google.registry.model.registrar.RegistrarPoc.Type.ADMIN;
@@ -63,8 +62,8 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
+ "\"emailAddress\":\"test.registrar1@example.com\","
+ "\"registrarId\":\"registrarId\","
+ "\"phoneNumber\":\"+1.9999999999\",\"faxNumber\":\"+1.9999999991\","
+ "\"types\":[\"ADMIN\"],\"visibleInWhoisAsAdmin\":true,"
+ "\"visibleInWhoisAsTech\":false,\"visibleInDomainWhoisAsAbuse\":false}";
+ "\"types\":[\"ADMIN\"],\"visibleInRdapAsAdmin\":true,"
+ "\"visibleInRdapAsTech\":false,\"visibleInDomainRdapAsAbuse\":false}";
private Registrar testRegistrar;
private RegistrarPoc adminPoc;
@@ -83,17 +82,17 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
.setPhoneNumber("+1.9999999999")
.setFaxNumber("+1.9999999991")
.setTypes(ImmutableSet.of(ADMIN))
.setVisibleInWhoisAsAdmin(true)
.setVisibleInWhoisAsTech(false)
.setVisibleInDomainWhoisAsAbuse(false)
.setVisibleInRdapAsAdmin(true)
.setVisibleInRdapAsTech(false)
.setVisibleInDomainRdapAsAbuse(false)
.build());
techPoc =
adminPoc
.asBuilder()
.setName("Test Registrar 2")
.setTypes(ImmutableSet.of(TECH))
.setVisibleInWhoisAsTech(true)
.setVisibleInWhoisAsAdmin(false)
.setVisibleInRdapAsTech(true)
.setVisibleInRdapAsAdmin(false)
.setEmailAddress("test.registrar2@example.com")
.setPhoneNumber("+1.1234567890")
.setFaxNumber("+1.1234567891")
@@ -103,7 +102,7 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
.asBuilder()
.setName("Test Registrar 3")
.setTypes(ImmutableSet.of(MARKETING))
.setVisibleInWhoisAsAdmin(false)
.setVisibleInRdapAsAdmin(false)
.setEmailAddress("test.registrar3@example.com")
.setPhoneNumber("+1.1238675309")
.setFaxNumber("+1.1238675309")
@@ -137,8 +136,7 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
assertThat(
loadAllOf(RegistrarPoc.class).stream()
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId()))
.map(r -> r.getName())
.collect(toImmutableList()))
.map(r -> r.getName()))
.containsExactly("Test Registrar 1", "Test Registrar 2");
}
@@ -183,8 +181,7 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
assertThat(
loadAllOf(RegistrarPoc.class).stream()
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId()))
.map(r -> r.getName())
.collect(toImmutableList()))
.map(r -> r.getName()))
.containsExactly("Test Registrar 1", "Test Registrar 2");
}
@@ -201,8 +198,7 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
assertThat(response.getPayload()).isEqualTo("Must have at least one primary contact");
assertThat(
loadAllOf(RegistrarPoc.class).stream()
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId()))
.collect(toImmutableList()))
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId())))
.containsExactly(adminPoc);
}
@@ -225,42 +221,40 @@ class ContactActionTest extends ConsoleActionBaseTestCase {
.isEqualTo("Please provide a phone number for at least one technical contact");
assertThat(
loadAllOf(RegistrarPoc.class).stream()
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId()))
.collect(toImmutableList()))
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId())))
.containsExactly(adminPoc);
}
@Test
void testFailure_postUpdateContactInfo_whoisContactMissingPhoneNumber() throws IOException {
void testFailure_postUpdateContactInfo_rdapContactMissingPhoneNumber() throws IOException {
ContactAction action =
createAction(
Action.Method.POST,
fteUser,
testRegistrar.getRegistrarId(),
techPoc.asBuilder().setPhoneNumber(null).setVisibleInDomainWhoisAsAbuse(true).build());
techPoc.asBuilder().setPhoneNumber(null).setVisibleInDomainRdapAsAbuse(true).build());
action.run();
assertThat(response.getStatus()).isEqualTo(SC_BAD_REQUEST);
assertThat(response.getPayload())
.isEqualTo("The abuse contact visible in domain WHOIS query must have a phone number");
.isEqualTo("The abuse contact visible in domain RDAP query must have a phone number");
}
@Test
void testFailure_postUpdateContactInfo_whoisContactPhoneNumberRemoved() throws IOException {
adminPoc = persistResource(adminPoc.asBuilder().setVisibleInDomainWhoisAsAbuse(true).build());
void testFailure_postUpdateContactInfo_rdapContactPhoneNumberRemoved() throws IOException {
adminPoc = persistResource(adminPoc.asBuilder().setVisibleInDomainRdapAsAbuse(true).build());
ContactAction action =
createAction(
Action.Method.PUT,
fteUser,
testRegistrar.getRegistrarId(),
adminPoc.asBuilder().setVisibleInDomainWhoisAsAbuse(false).build());
adminPoc.asBuilder().setVisibleInDomainRdapAsAbuse(false).build());
action.run();
assertThat(response.getStatus()).isEqualTo(SC_BAD_REQUEST);
assertThat(response.getPayload())
.isEqualTo("An abuse contact visible in domain WHOIS query must be designated");
.isEqualTo("An abuse contact visible in domain RDAP query must be designated");
assertThat(
loadAllOf(RegistrarPoc.class).stream()
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId()))
.collect(toImmutableList()))
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId())))
.containsExactly(adminPoc);
}
@@ -291,19 +285,16 @@ by admin fte@email.tld:
contacts:
ADDED:
{id=5, name=Test Registrar 2, emailAddress=incorrect@example.com, registrarId=registrarId, \
phoneNumber=+1.1234567890, faxNumber=+1.1234567891, types=[TECH], visibleInWhoisAsAdmin=false, \
visibleInWhoisAsTech=true, visibleInDomainWhoisAsAbuse=false, \
allowedToSetRegistryLockPassword=false}
phoneNumber=+1.1234567890, faxNumber=+1.1234567891, types=[TECH], visibleInRdapAsAdmin=false, \
visibleInRdapAsTech=true, visibleInDomainRdapAsAbuse=false}
REMOVED:
{id=5, name=Test Registrar 2, emailAddress=test.registrar2@example.com, \
registrarId=registrarId, phoneNumber=+1.1234567890, faxNumber=+1.1234567891, types=[TECH], \
visibleInWhoisAsAdmin=false, visibleInWhoisAsTech=true, visibleInDomainWhoisAsAbuse=false, \
allowedToSetRegistryLockPassword=false}
visibleInRdapAsAdmin=false, visibleInRdapAsTech=true, visibleInDomainRdapAsAbuse=false}
FINAL CONTENTS:
{id=5, name=Test Registrar 2, emailAddress=incorrect@example.com, registrarId=registrarId, \
phoneNumber=+1.1234567890, faxNumber=+1.1234567891, types=[TECH], visibleInWhoisAsAdmin=false, \
visibleInWhoisAsTech=true, visibleInDomainWhoisAsAbuse=false, \
allowedToSetRegistryLockPassword=false}
phoneNumber=+1.1234567890, faxNumber=+1.1234567891, types=[TECH], visibleInRdapAsAdmin=false, \
visibleInRdapAsTech=true, visibleInDomainRdapAsAbuse=false}
""")
.setRecipients(ImmutableList.of(new InternetAddress("notification@test.example")))
.build());
@@ -319,8 +310,7 @@ allowedToSetRegistryLockPassword=false}
assertThat(
loadAllOf(RegistrarPoc.class).stream()
.filter(r -> r.registrarId.equals(testRegistrar.getRegistrarId()))
.map(r -> r.getName())
.collect(toImmutableList()))
.map(r -> r.getName()))
.containsExactly("Test Registrar 1", "Test Registrar 2");
}