From 5603b915267f9e06b177536769901393e5f989a4 Mon Sep 17 00:00:00 2001 From: Ben McIlwain Date: Mon, 4 Nov 2024 16:16:11 -0500 Subject: [PATCH] Make nomulus update_recurrence command only fail on pending transfers (#2605) It was failing when any kind of transfer data was present, even completed transfer data. Note that completed transfer data persists on a domain indefinitely until/unless a new transfer is requested. BUG= http://b/377328244 --- .../tools/UpdateRecurrenceCommand.java | 4 +++- .../tools/UpdateRecurrenceCommandTest.java | 21 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/google/registry/tools/UpdateRecurrenceCommand.java b/core/src/main/java/google/registry/tools/UpdateRecurrenceCommand.java index 857e7c35f..a8cfbaa2f 100644 --- a/core/src/main/java/google/registry/tools/UpdateRecurrenceCommand.java +++ b/core/src/main/java/google/registry/tools/UpdateRecurrenceCommand.java @@ -30,6 +30,7 @@ import google.registry.model.domain.Domain; import google.registry.model.domain.DomainHistory; import google.registry.model.reporting.HistoryEntry; import google.registry.model.reporting.HistoryEntry.HistoryEntryId; +import google.registry.model.transfer.TransferStatus; import java.util.List; import java.util.Optional; import javax.annotation.Nullable; @@ -174,7 +175,8 @@ public class UpdateRecurrenceCommand extends ConfirmingCommand { "Domain %s has already had a deletion time set", domainName); checkArgument( - domain.getTransferData().isEmpty(), + domain.getTransferData().isEmpty() + || domain.getTransferData().getTransferStatus() != TransferStatus.PENDING, "Domain %s has a pending transfer: %s", domainName, domain.getTransferData()); diff --git a/core/src/test/java/google/registry/tools/UpdateRecurrenceCommandTest.java b/core/src/test/java/google/registry/tools/UpdateRecurrenceCommandTest.java index 9e9dc853d..846e71d1a 100644 --- a/core/src/test/java/google/registry/tools/UpdateRecurrenceCommandTest.java +++ b/core/src/test/java/google/registry/tools/UpdateRecurrenceCommandTest.java @@ -33,6 +33,8 @@ import google.registry.model.billing.BillingRecurrence; import google.registry.model.domain.Domain; import google.registry.model.domain.DomainHistory; import google.registry.model.reporting.HistoryEntry; +import google.registry.model.transfer.DomainTransferData; +import google.registry.model.transfer.TransferStatus; import java.util.Optional; import javax.annotation.Nullable; import org.joda.money.CurrencyUnit; @@ -121,6 +123,25 @@ public class UpdateRecurrenceCommandTest extends CommandTestCase