From 37aa1d181513c3be5ff6f3885420735fac641324 Mon Sep 17 00:00:00 2001 From: mcilwain Date: Tue, 15 Jan 2019 12:56:32 -0800 Subject: [PATCH] Always require acknowledgment of premium fees This removes the configuration ability on both Registry and Registrar entities to allow operations on premium domains to succeed without acking the fees using the fee extension. We only ever used this ability during the minna launch, and it was a fiasco. We have no intention of ever allowing creation, renewal, transfer, restoring, etc. of premium domains without acking the fees ever again, and haven't done so since 2013, so removing this ability allows us to simplify our code, data model, and tests. Note that all TLDs in our production system currently require price ACKing anyway, so from an external partner perspective this commit is a noop. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=229423650 --- .../flows/domain/DomainCreateFlow.java | 2 +- .../flows/domain/DomainFlowUtils.java | 9 +--- .../flows/domain/DomainRenewFlow.java | 3 +- .../domain/DomainRestoreRequestFlow.java | 3 +- .../domain/DomainTransferRequestFlow.java | 2 +- .../registry/model/registrar/Registrar.java | 13 ------ .../registry/model/registry/Registry.java | 12 ------ .../tools/CreateOrUpdateRegistrarCommand.java | 8 ---- .../tools/CreateOrUpdateTldCommand.java | 8 ---- .../registry/tools/server/ListTldsAction.java | 4 +- java/google/registry/ui/externs/json.js | 3 +- .../ui/server/RegistrarFormFields.java | 3 -- .../ui/server/registrar/ConsoleUiAction.java | 4 +- .../registrar/RegistrarSettingsAction.java | 5 --- .../registry/ui/soy/registrar/Console.soy | 11 ----- .../flows/domain/DomainCreateFlowTest.java | 42 +------------------ .../flows/domain/DomainRenewFlowTest.java | 15 +------ .../domain/DomainRestoreRequestFlowTest.java | 30 ++++--------- .../domain/DomainTransferRequestFlowTest.java | 38 ++++++++--------- .../domain/testdata/domain_create_premium.xml | 8 +++- .../domain_create_response_premium.xml | 6 +++ .../domain_update_restore_request.xml | 2 +- .../domain_update_restore_request_premium.xml | 11 ++++- ...pdate_restore_request_response_premium.xml | 18 ++++++++ .../model/registrar/RegistrarTest.java | 1 - .../google/registry/model/testdata/schema.txt | 2 - .../tools/CreateRegistrarCommandTest.java | 23 ---------- .../registry/tools/CreateTldCommandTest.java | 10 ----- .../tools/UpdateRegistrarCommandTest.java | 17 -------- .../registry/tools/UpdateTldCommandTest.java | 13 ------ .../registry/ui/js/registrar/console_test.js | 1 - .../RegistrarSettingsActionTest.java | 9 ---- .../registrar/testdata/update_ppa_email.txt | 2 - 33 files changed, 81 insertions(+), 257 deletions(-) create mode 100644 javatests/google/registry/flows/domain/testdata/domain_update_restore_request_response_premium.xml delete mode 100644 javatests/google/registry/ui/server/registrar/testdata/update_ppa_email.txt diff --git a/java/google/registry/flows/domain/DomainCreateFlow.java b/java/google/registry/flows/domain/DomainCreateFlow.java index 061a51323..f830a5f1b 100644 --- a/java/google/registry/flows/domain/DomainCreateFlow.java +++ b/java/google/registry/flows/domain/DomainCreateFlow.java @@ -290,7 +290,7 @@ public class DomainCreateFlow implements TransactionalFlow { eppInput.getSingleExtension(FeeCreateCommandExtension.class); FeesAndCredits feesAndCredits = pricingLogic.getCreatePrice(registry, targetId, now, years, isAnchorTenant); - validateFeeChallenge(targetId, registry.getTldStr(), clientId, now, feeCreate, feesAndCredits); + validateFeeChallenge(targetId, now, feeCreate, feesAndCredits); Optional secDnsCreate = validateSecDnsExtension(eppInput.getSingleExtension(SecDnsCreateExtension.class)); String repoId = createDomainRepoId(ObjectifyService.allocateId(), registry.getTldStr()); diff --git a/java/google/registry/flows/domain/DomainFlowUtils.java b/java/google/registry/flows/domain/DomainFlowUtils.java index 13140df86..8a44689af 100644 --- a/java/google/registry/flows/domain/DomainFlowUtils.java +++ b/java/google/registry/flows/domain/DomainFlowUtils.java @@ -672,18 +672,11 @@ public class DomainFlowUtils { */ public static void validateFeeChallenge( String domainName, - String tld, - String clientId, DateTime priceTime, final Optional feeCommand, FeesAndCredits feesAndCredits) throws EppException { - - Registry registry = Registry.get(tld); - Registrar registrar = Registrar.loadByClientIdCached(clientId).get(); - boolean premiumAckRequired = - registry.getPremiumPriceAckRequired() || registrar.getPremiumPriceAckRequired(); - if (premiumAckRequired && isDomainPremium(domainName, priceTime) && !feeCommand.isPresent()) { + if (isDomainPremium(domainName, priceTime) && !feeCommand.isPresent()) { throw new FeesRequiredForPremiumNameException(); } validateFeesAckedIfPresent(feeCommand, feesAndCredits); diff --git a/java/google/registry/flows/domain/DomainRenewFlow.java b/java/google/registry/flows/domain/DomainRenewFlow.java index 3fadf8026..3a122a49c 100644 --- a/java/google/registry/flows/domain/DomainRenewFlow.java +++ b/java/google/registry/flows/domain/DomainRenewFlow.java @@ -149,8 +149,7 @@ public final class DomainRenewFlow implements TransactionalFlow { eppInput.getSingleExtension(FeeRenewCommandExtension.class); FeesAndCredits feesAndCredits = pricingLogic.getRenewPrice(Registry.get(existingDomain.getTld()), targetId, now, years); - validateFeeChallenge( - targetId, existingDomain.getTld(), clientId, now, feeRenew, feesAndCredits); + validateFeeChallenge(targetId, now, feeRenew, feesAndCredits); flowCustomLogic.afterValidation( AfterValidationParameters.newBuilder() .setExistingDomain(existingDomain) diff --git a/java/google/registry/flows/domain/DomainRestoreRequestFlow.java b/java/google/registry/flows/domain/DomainRestoreRequestFlow.java index 1c5eb418c..02abe2a5f 100644 --- a/java/google/registry/flows/domain/DomainRestoreRequestFlow.java +++ b/java/google/registry/flows/domain/DomainRestoreRequestFlow.java @@ -208,8 +208,7 @@ public final class DomainRestoreRequestFlow implements TransactionalFlow { if (!existingDomain.getGracePeriodStatuses().contains(GracePeriodStatus.REDEMPTION)) { throw new DomainNotEligibleForRestoreException(); } - validateFeeChallenge( - targetId, existingDomain.getTld(), clientId, now, feeUpdate, feesAndCredits); + validateFeeChallenge(targetId, now, feeUpdate, feesAndCredits); } private ImmutableSet createRestoreAndRenewBillingEvents( diff --git a/java/google/registry/flows/domain/DomainTransferRequestFlow.java b/java/google/registry/flows/domain/DomainTransferRequestFlow.java index 6da3c115d..7799a08c7 100644 --- a/java/google/registry/flows/domain/DomainTransferRequestFlow.java +++ b/java/google/registry/flows/domain/DomainTransferRequestFlow.java @@ -167,7 +167,7 @@ public final class DomainTransferRequestFlow implements TransactionalFlow { ? Optional.empty() : Optional.of(pricingLogic.getTransferPrice(registry, targetId, now)); if (feesAndCredits.isPresent()) { - validateFeeChallenge(targetId, tld, gainingClientId, now, feeTransfer, feesAndCredits.get()); + validateFeeChallenge(targetId, now, feeTransfer, feesAndCredits.get()); } HistoryEntry historyEntry = buildHistoryEntry(existingDomain, registry, now, period); DateTime automaticTransferTime = diff --git a/java/google/registry/model/registrar/Registrar.java b/java/google/registry/model/registrar/Registrar.java index 23f026159..b32208444 100644 --- a/java/google/registry/model/registrar/Registrar.java +++ b/java/google/registry/model/registrar/Registrar.java @@ -394,13 +394,6 @@ public class Registrar extends ImmutableObject implements Buildable, Jsonifiable */ boolean contactsRequireSyncing = true; - /** Whether the registrar must acknowledge the price to register non-standard-priced domains. */ - boolean premiumPriceAckRequired; - - public boolean getPremiumPriceAckRequired() { - return premiumPriceAckRequired; - } - @NonFinalForTesting private static Supplier saltSupplier = () -> { @@ -593,7 +586,6 @@ public class Registrar extends ImmutableObject implements Buildable, Jsonifiable .put("emailAddress", emailAddress) .put("whoisServer", getWhoisServer()) .put("blockPremiumNames", blockPremiumNames) - .put("premiumPriceAckRequired", premiumPriceAckRequired) .put("url", url) .put("icannReferralEmail", getIcannReferralEmail()) .put("driveFolderId", driveFolderId) @@ -866,11 +858,6 @@ public class Registrar extends ImmutableObject implements Buildable, Jsonifiable return this; } - public Builder setPremiumPriceAckRequired(boolean premiumPriceAckRequired) { - getInstance().premiumPriceAckRequired = premiumPriceAckRequired; - return this; - } - /** Build the registrar, nullifying empty fields. */ @Override public Registrar build() { diff --git a/java/google/registry/model/registry/Registry.java b/java/google/registry/model/registry/Registry.java index 45ea5914d..142bfd24c 100644 --- a/java/google/registry/model/registry/Registry.java +++ b/java/google/registry/model/registry/Registry.java @@ -334,9 +334,6 @@ public class Registry extends ImmutableObject implements Buildable { /** Whether the pull queue that writes to authoritative DNS is paused for this TLD. */ boolean dnsPaused = DEFAULT_DNS_PAUSED; - /** Whether the price must be acknowledged to register premium names on this TLD. */ - boolean premiumPriceAckRequired = true; - /** * Whether only domains with {@link ReservationType#NAMESERVER_RESTRICTED} reservation type in a * reserved list can be registered on this TLD. @@ -462,10 +459,6 @@ public class Registry extends ImmutableObject implements Buildable { return driveFolderId; } - public boolean getPremiumPriceAckRequired() { - return premiumPriceAckRequired; - } - /** * Returns true if only domains with nameserver restricted reservation on this TLD can be created. */ @@ -658,11 +651,6 @@ public class Registry extends ImmutableObject implements Buildable { return this; } - public Builder setPremiumPriceAckRequired(boolean premiumPriceAckRequired) { - getInstance().premiumPriceAckRequired = premiumPriceAckRequired; - return this; - } - public Builder setDomainCreateRestricted(boolean domainCreateRestricted) { getInstance().domainCreateRestricted = domainCreateRestricted; return this; diff --git a/java/google/registry/tools/CreateOrUpdateRegistrarCommand.java b/java/google/registry/tools/CreateOrUpdateRegistrarCommand.java index d955ff4f0..c7a095b22 100644 --- a/java/google/registry/tools/CreateOrUpdateRegistrarCommand.java +++ b/java/google/registry/tools/CreateOrUpdateRegistrarCommand.java @@ -259,13 +259,6 @@ abstract class CreateOrUpdateRegistrarCommand extends MutatingCommand { description = "Hostname of registrar WHOIS server. (Default: whois.nic.google)") String whoisServer; - @Nullable - @Parameter( - names = "--premium_price_ack_required", - description = "Whether operations on premium domains require explicit ack of prices", - arity = 1) - private Boolean premiumPriceAckRequired; - /** Returns the existing registrar (for update) or null (for creates). */ @Nullable abstract Registrar getOldRegistrar(String clientId); @@ -392,7 +385,6 @@ abstract class CreateOrUpdateRegistrarCommand extends MutatingCommand { Optional.ofNullable(phonePasscode).ifPresent(builder::setPhonePasscode); Optional.ofNullable(icannReferralEmail).ifPresent(builder::setIcannReferralEmail); Optional.ofNullable(whoisServer).ifPresent(builder::setWhoisServer); - Optional.ofNullable(premiumPriceAckRequired).ifPresent(builder::setPremiumPriceAckRequired); // If the registrarName is being set, verify that it is either null or it normalizes uniquely. String oldRegistrarName = (oldRegistrar == null) ? null : oldRegistrar.getRegistrarName(); diff --git a/java/google/registry/tools/CreateOrUpdateTldCommand.java b/java/google/registry/tools/CreateOrUpdateTldCommand.java index 449743439..f12883336 100644 --- a/java/google/registry/tools/CreateOrUpdateTldCommand.java +++ b/java/google/registry/tools/CreateOrUpdateTldCommand.java @@ -117,13 +117,6 @@ abstract class CreateOrUpdateTldCommand extends MutatingCommand { description = "Tld type (REAL or TEST)") private TldType tldType; - @Nullable - @Parameter( - names = "--premium_price_ack_required", - description = "Whether operations on premium domains require explicit ack of prices", - arity = 1) - private Boolean premiumPriceAckRequired; - @Nullable @Parameter( names = "--create_billing_cost", @@ -335,7 +328,6 @@ abstract class CreateOrUpdateTldCommand extends MutatingCommand { Optional.ofNullable(serverStatusChangeCost) .ifPresent(builder::setServerStatusChangeBillingCost); Optional.ofNullable(tldType).ifPresent(builder::setTldType); - Optional.ofNullable(premiumPriceAckRequired).ifPresent(builder::setPremiumPriceAckRequired); Optional.ofNullable(lordnUsername).ifPresent(u -> builder.setLordnUsername(u.orElse(null))); Optional.ofNullable(claimsPeriodEnd).ifPresent(builder::setClaimsPeriodEnd); Optional.ofNullable(domainCreateRestricted).ifPresent(builder::setDomainCreateRestricted); diff --git a/java/google/registry/tools/server/ListTldsAction.java b/java/google/registry/tools/server/ListTldsAction.java index 8a7163ecf..05c3424f2 100644 --- a/java/google/registry/tools/server/ListTldsAction.java +++ b/java/google/registry/tools/server/ListTldsAction.java @@ -57,8 +57,7 @@ public final class ListTldsAction extends ListObjectsAction { return ImmutableBiMap.of( "TLD", "tldStr", "dns", "dnsPaused", - "escrow", "escrowEnabled", - "premiumPricing", "premiumPriceAckRequired"); + "escrow", "escrowEnabled"); } @Override @@ -67,7 +66,6 @@ public final class ListTldsAction extends ListObjectsAction { return new ImmutableMap.Builder() .put("dnsPaused", registry.getDnsPaused() ? "paused" : "-") .put("escrowEnabled", registry.getEscrowEnabled() ? "enabled" : "-") - .put("premiumPriceAckRequired", registry.getPremiumPriceAckRequired() ? "ack req'd" : "-") .put("tldState", registry.isPdt(now) ? "PDT" : registry.getTldState(now).toString()) .put("tldStateTransitions", registry.getTldStateTransitions().toString()) .put("renewBillingCost", registry.getStandardRenewCost(now).toString()) diff --git a/java/google/registry/ui/externs/json.js b/java/google/registry/ui/externs/json.js index 7f99b66a8..3c64e8c25 100644 --- a/java/google/registry/ui/externs/json.js +++ b/java/google/registry/ui/externs/json.js @@ -87,8 +87,7 @@ registry.json.Response.prototype.results; * localizedAddress: registry.json.RegistrarAddress, * whoisServer: (string?|undefined), * referralUrl: (string?|undefined), - * contacts: !Array., - * premiumPriceAckRequired: boolean + * contacts: !Array. * }} */ registry.json.Registrar; diff --git a/java/google/registry/ui/server/RegistrarFormFields.java b/java/google/registry/ui/server/RegistrarFormFields.java index 273cfd502..ccb26e398 100644 --- a/java/google/registry/ui/server/RegistrarFormFields.java +++ b/java/google/registry/ui/server/RegistrarFormFields.java @@ -279,9 +279,6 @@ public final class RegistrarFormFields { args, L10N_STREET_FIELD, L10N_CITY_FIELD, L10N_STATE_FIELD, L10N_ZIP_FIELD)) .build(); - public static final FormField PREMIUM_PRICE_ACK_REQUIRED = - FormField.named("premiumPriceAckRequired", Boolean.class).build(); - private static @Nullable RegistrarAddress toNewAddress( @Nullable Map args, final FormField, List> streetField, diff --git a/java/google/registry/ui/server/registrar/ConsoleUiAction.java b/java/google/registry/ui/server/registrar/ConsoleUiAction.java index 725842827..9cf74270f 100644 --- a/java/google/registry/ui/server/registrar/ConsoleUiAction.java +++ b/java/google/registry/ui/server/registrar/ConsoleUiAction.java @@ -35,7 +35,6 @@ import com.google.template.soy.data.SoyMapData; import com.google.template.soy.shared.SoyCssRenamingMap; import com.google.template.soy.tofu.SoyTofu; import google.registry.config.RegistryConfig.Config; -import google.registry.model.registrar.Registrar; import google.registry.request.Action; import google.registry.request.Parameter; import google.registry.request.Response; @@ -149,8 +148,7 @@ public final class ConsoleUiAction implements Runnable { // since we double check the access to the registrar on any read / update request. We have to // - since the access might get revoked between the initial page load and the request! (also // because the requests come from the browser, and can easily be faked) - Registrar registrar = registrarAccessor.getRegistrar(clientId); - data.put("requireFeeExtension", registrar.getPremiumPriceAckRequired()); + registrarAccessor.getRegistrar(clientId); } catch (RegistrarAccessDeniedException e) { logger.atWarning().withCause(e).log( "User %s doesn't have access to registrar console.", authResult.userIdForLogging()); diff --git a/java/google/registry/ui/server/registrar/RegistrarSettingsAction.java b/java/google/registry/ui/server/registrar/RegistrarSettingsAction.java index 298c585f6..e64063313 100644 --- a/java/google/registry/ui/server/registrar/RegistrarSettingsAction.java +++ b/java/google/registry/ui/server/registrar/RegistrarSettingsAction.java @@ -260,11 +260,6 @@ public class RegistrarSettingsAction implements Runnable, JsonActionRunner.JsonA Registrar.Builder builder = initialRegistrar.asBuilder(); - // BILLING - RegistrarFormFields.PREMIUM_PRICE_ACK_REQUIRED - .extractUntyped(args) - .ifPresent(builder::setPremiumPriceAckRequired); - // WHOIS // // Because of how whoisServer handles "default value", it's possible that setting the existing diff --git a/java/google/registry/ui/soy/registrar/Console.soy b/java/google/registry/ui/soy/registrar/Console.soy index a66bdeafd..371adec2d 100644 --- a/java/google/registry/ui/soy/registrar/Console.soy +++ b/java/google/registry/ui/soy/registrar/Console.soy @@ -315,8 +315,6 @@ {template .resources} {@param? driveFolderId: string} {@param technicalDocsUrl: string} - {@param premiumPriceAckRequired: bool} - {@param readonly: bool}

Resources & billing

@@ -341,15 +339,6 @@ {else} Your billing folder is pending allocation. {/if} -

EPP Settings

-

Use the 'Edit' button above to switch to enable editing the information - below. Updates may require up to 10 minutes to take effect. -

- - Require use of fee extension to acknowledge all premium domain prices. -
{/template} diff --git a/javatests/google/registry/flows/domain/DomainCreateFlowTest.java b/javatests/google/registry/flows/domain/DomainCreateFlowTest.java index 0357ae9f3..820134d6b 100644 --- a/javatests/google/registry/flows/domain/DomainCreateFlowTest.java +++ b/javatests/google/registry/flows/domain/DomainCreateFlowTest.java @@ -656,20 +656,9 @@ public class DomainCreateFlowTest extends ResourceFlowTestCase substitutions) { @@ -1275,7 +1289,7 @@ public class DomainTransferRequestFlowTest } @Test - public void testFailure_registryRequiresAcking_feeNotProvidedOnPremiumName() { + public void testFailure_feeNotProvidedOnPremiumName() { setupDomain("rich", "example"); EppException thrown = assertThrows( @@ -1284,20 +1298,6 @@ public class DomainTransferRequestFlowTest assertAboutEppExceptions().that(thrown).marshalsToXml(); } - @Test - public void testFailure_registrarRequiresAcking_feeNotProvidedOnPremiumName() { - setupDomain("rich", "example"); - persistResource(Registry.get("example").asBuilder().setPremiumPriceAckRequired(false).build()); - persistResource( - loadRegistrar("NewRegistrar").asBuilder().setPremiumPriceAckRequired(true).build()); - clock.advanceOneMilli(); - EppException thrown = - assertThrows( - FeesRequiredForPremiumNameException.class, - () -> doFailingTest("domain_transfer_request_premium.xml")); - assertAboutEppExceptions().that(thrown).marshalsToXml(); - } - @Test public void testFailure_noAuthInfo() { setupDomain("example", "tld"); diff --git a/javatests/google/registry/flows/domain/testdata/domain_create_premium.xml b/javatests/google/registry/flows/domain/testdata/domain_create_premium.xml index b6f53589c..f620515cc 100644 --- a/javatests/google/registry/flows/domain/testdata/domain_create_premium.xml +++ b/javatests/google/registry/flows/domain/testdata/domain_create_premium.xml @@ -2,7 +2,7 @@ + xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"> rich.example 2 @@ -17,6 +17,12 @@ + + + USD + 200.00 + + ABC-12345 diff --git a/javatests/google/registry/flows/domain/testdata/domain_create_response_premium.xml b/javatests/google/registry/flows/domain/testdata/domain_create_response_premium.xml index a727f74cb..fe5a489dc 100644 --- a/javatests/google/registry/flows/domain/testdata/domain_create_response_premium.xml +++ b/javatests/google/registry/flows/domain/testdata/domain_create_response_premium.xml @@ -11,6 +11,12 @@ 2001-04-03T22:00:00.0Z + + + USD + 200.00 + + ABC-12345 server-trid diff --git a/javatests/google/registry/flows/domain/testdata/domain_update_restore_request.xml b/javatests/google/registry/flows/domain/testdata/domain_update_restore_request.xml index 124bc0b89..c03eb97e7 100644 --- a/javatests/google/registry/flows/domain/testdata/domain_update_restore_request.xml +++ b/javatests/google/registry/flows/domain/testdata/domain_update_restore_request.xml @@ -3,7 +3,7 @@ - example.tld + %DOMAIN% diff --git a/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_premium.xml b/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_premium.xml index 14460631d..4b633f0fa 100644 --- a/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_premium.xml +++ b/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_premium.xml @@ -2,7 +2,7 @@ + xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"> rich.example @@ -11,6 +11,15 @@ + + USD + + 100.00 + + + 17.00 + + ABC-12345 diff --git a/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_response_premium.xml b/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_response_premium.xml new file mode 100644 index 000000000..7e60f773a --- /dev/null +++ b/javatests/google/registry/flows/domain/testdata/domain_update_restore_request_response_premium.xml @@ -0,0 +1,18 @@ + + + + Command completed successfully + + + + USD + 17.00 + 100.00 + + + + ABC-12345 + server-trid + + + diff --git a/javatests/google/registry/model/registrar/RegistrarTest.java b/javatests/google/registry/model/registrar/RegistrarTest.java index c05e4f0b5..bdf2aab4a 100644 --- a/javatests/google/registry/model/registrar/RegistrarTest.java +++ b/javatests/google/registry/model/registrar/RegistrarTest.java @@ -98,7 +98,6 @@ public class RegistrarTest extends EntityTestCase { .setBillingAccountMap( ImmutableMap.of(CurrencyUnit.USD, "abc123", CurrencyUnit.JPY, "789xyz")) .setPhonePasscode("01234") - .setPremiumPriceAckRequired(true) .build()); persistResource(registrar); abuseAdminContact = diff --git a/javatests/google/registry/model/testdata/schema.txt b/javatests/google/registry/model/testdata/schema.txt index 4fa328912..49685b089 100644 --- a/javatests/google/registry/model/testdata/schema.txt +++ b/javatests/google/registry/model/testdata/schema.txt @@ -409,7 +409,6 @@ class google.registry.model.registrar.Registrar { @Parent com.googlecode.objectify.Key parent; boolean blockPremiumNames; boolean contactsRequireSyncing; - boolean premiumPriceAckRequired; google.registry.model.CreateAutoTimestamp creationTime; google.registry.model.UpdateAutoTimestamp lastUpdateTime; google.registry.model.registrar.Registrar$State state; @@ -491,7 +490,6 @@ class google.registry.model.registry.Registry { boolean dnsPaused; boolean domainCreateRestricted; boolean escrowEnabled; - boolean premiumPriceAckRequired; com.googlecode.objectify.Key premiumList; google.registry.model.CreateAutoTimestamp creationTime; google.registry.model.common.TimedTransitionProperty tldStateTransitions; diff --git a/javatests/google/registry/tools/CreateRegistrarCommandTest.java b/javatests/google/registry/tools/CreateRegistrarCommandTest.java index 36fc23878..d0aaf19a0 100644 --- a/javatests/google/registry/tools/CreateRegistrarCommandTest.java +++ b/javatests/google/registry/tools/CreateRegistrarCommandTest.java @@ -88,7 +88,6 @@ public class CreateRegistrarCommandTest extends CommandTestCase registrar = Registrar.loadByClientId("clientz"); - assertThat(registrar).isPresent(); - assertThat(registrar.get().getPremiumPriceAckRequired()).isTrue(); - } - @Test public void testFailure_missingRegistrarType() { IllegalArgumentException thrown = diff --git a/javatests/google/registry/tools/CreateTldCommandTest.java b/javatests/google/registry/tools/CreateTldCommandTest.java index 08b040d2f..e2ecb6764 100644 --- a/javatests/google/registry/tools/CreateTldCommandTest.java +++ b/javatests/google/registry/tools/CreateTldCommandTest.java @@ -275,16 +275,6 @@ public class CreateTldCommandTest extends CommandTestCase { .containsExactly("xn--q9jyb4c_abuse", "common_abuse"); } - @Test - public void testSuccess_setPremiumPriceAckRequired() throws Exception { - runCommandForced( - "--premium_price_ack_required=true", - "--roid_suffix=Q9JYB4C", - "--dns_writers=VoidDnsWriter", - "xn--q9jyb4c"); - assertThat(Registry.get("xn--q9jyb4c").getPremiumPriceAckRequired()).isTrue(); - } - @Test public void testFailure_invalidAddGracePeriod() { IllegalArgumentException thrown = diff --git a/javatests/google/registry/tools/UpdateRegistrarCommandTest.java b/javatests/google/registry/tools/UpdateRegistrarCommandTest.java index a911156c5..c03725ec1 100644 --- a/javatests/google/registry/tools/UpdateRegistrarCommandTest.java +++ b/javatests/google/registry/tools/UpdateRegistrarCommandTest.java @@ -312,28 +312,12 @@ public class UpdateRegistrarCommandTest extends CommandTestCase { .isEqualTo(Money.ofMajor(JPY, 101112)); } - @Test - public void testSuccess_setPremiumPriceAckRequired() throws Exception { - runCommandForced("--premium_price_ack_required=true", "xn--q9jyb4c"); - assertThat(Registry.get("xn--q9jyb4c").getPremiumPriceAckRequired()).isTrue(); - } - - @Test - public void testSuccess_clearPremiumPriceAckRequired() throws Exception { - persistResource(Registry.get("xn--q9jyb4c").asBuilder().setPremiumPriceAckRequired(true).build()); - runCommandForced("--premium_price_ack_required=false", "xn--q9jyb4c"); - assertThat(Registry.get("xn--q9jyb4c").getPremiumPriceAckRequired()).isFalse(); - } - @Test public void testSuccess_setLordnUsername() throws Exception { runCommandForced("--lordn_username=lordn000", "xn--q9jyb4c"); diff --git a/javatests/google/registry/ui/js/registrar/console_test.js b/javatests/google/registry/ui/js/registrar/console_test.js index afb2347bf..489fc19b2 100644 --- a/javatests/google/registry/ui/js/registrar/console_test.js +++ b/javatests/google/registry/ui/js/registrar/console_test.js @@ -115,7 +115,6 @@ function testNavToResources() { path: 'resources', xsrfToken: test.testXsrfToken, technicalDocsUrl: 'http://example.com/techdocs', - premiumPriceAckRequired: false, readonly: true, }); const xhr = goog.testing.net.XhrIo.getSendInstances().pop(); diff --git a/javatests/google/registry/ui/server/registrar/RegistrarSettingsActionTest.java b/javatests/google/registry/ui/server/registrar/RegistrarSettingsActionTest.java index b7c23d4dd..927c2400b 100644 --- a/javatests/google/registry/ui/server/registrar/RegistrarSettingsActionTest.java +++ b/javatests/google/registry/ui/server/registrar/RegistrarSettingsActionTest.java @@ -345,15 +345,6 @@ public class RegistrarSettingsActionTest extends RegistrarSettingsActionTestCase CLIENT_ID, "update", allExceptCorrectRoles.toString(), "ERROR: ForbiddenException"); } - @Test - public void testUpdate_premiumPriceAck() { - doTestUpdate( - Role.OWNER, - Registrar::getPremiumPriceAckRequired, - true, - Registrar.Builder::setPremiumPriceAckRequired); - } - @Test public void testUpdate_whoisServer() { doTestUpdate( diff --git a/javatests/google/registry/ui/server/registrar/testdata/update_ppa_email.txt b/javatests/google/registry/ui/server/registrar/testdata/update_ppa_email.txt deleted file mode 100644 index 4c3352f7b..000000000 --- a/javatests/google/registry/ui/server/registrar/testdata/update_ppa_email.txt +++ /dev/null @@ -1,2 +0,0 @@ -The following changes were made to the registrar: -premiumPriceAckRequired: false -> true