Inject clock for Tmch validity using InjectRule instead of manually

Basically a less patchy version of []

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=202138086
This commit is contained in:
guyben 2018-06-26 09:09:21 -07:00 committed by Ben McIlwain
parent 3550045636
commit b4cb3e0a6f
8 changed files with 14 additions and 20 deletions

View file

@ -20,7 +20,6 @@ import static google.registry.config.RegistryConfig.getSingletonCacheRefreshDura
import static google.registry.util.ResourceUtils.readResourceUtf8;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
@ -120,8 +119,7 @@ public final class TmchCertificateAuthority {
}});
@NonFinalForTesting
@VisibleForTesting
public static Clock clock = new SystemClock();
private static Clock clock = new SystemClock();
/**
* Check that {@code cert} is signed by the ICANN TMCH CA root and not revoked.

View file

@ -20,7 +20,6 @@ import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSortedMap;
import google.registry.model.registry.Registry.TldState;
import google.registry.testing.AppEngineRule;
import google.registry.tmch.TmchCertificateAuthority;
import google.registry.util.DateTimeUtils;
import org.joda.time.DateTime;
import org.junit.Before;
@ -43,8 +42,6 @@ public class EppLifecycleDomainApplicationTest extends EppTestCase {
@Before
public void initTld() {
// Setting the clock used for SignedMark signature validity.
TmchCertificateAuthority.clock = () -> DateTime.parse("2015-01-01TZ");
createTld("example", ImmutableSortedMap.of(
DateTimeUtils.START_OF_TIME, TldState.SUNRISE,
START_OF_GA, TldState.GENERAL_AVAILABILITY));

View file

@ -45,7 +45,6 @@ import google.registry.model.registry.Registry;
import google.registry.model.registry.Registry.TldState;
import google.registry.model.reporting.HistoryEntry.Type;
import google.registry.testing.AppEngineRule;
import google.registry.tmch.TmchCertificateAuthority;
import java.util.Objects;
import java.util.Optional;
import org.joda.money.Money;
@ -66,8 +65,6 @@ public class EppLifecycleDomainTest extends EppTestCase {
@Before
public void initTld() {
// Setting the clock used for SignedMark signature validity.
TmchCertificateAuthority.clock = () -> DateTime.parse("2015-01-01TZ");
createTlds("example", "tld");
}

View file

@ -32,6 +32,7 @@ import google.registry.testing.FakeHttpSession;
import google.registry.testing.FakeResponse;
import google.registry.testing.InjectRule;
import google.registry.testing.ShardableTestCase;
import google.registry.tmch.TmchCertificateAuthority;
import java.util.Map;
import javax.annotation.Nullable;
import org.joda.time.DateTime;
@ -55,7 +56,10 @@ public class EppTestCase extends ShardableTestCase {
@Before
public void initTestCase() {
inject.setStaticField(Ofy.class, "clock", clock); // For transactional flows.
// For transactional flows
inject.setStaticField(Ofy.class, "clock", clock);
// For SignedMark signature validity
inject.setStaticField(TmchCertificateAuthority.class, "clock", clock);
}
/**

View file

@ -108,7 +108,10 @@ public abstract class FlowTestCase<F extends Flow> extends ShardableTestCase {
sessionMetadata.setClientId("TheRegistrar");
sessionMetadata.setServiceExtensionUris(ProtocolDefinition.getVisibleServiceExtensionUris());
ofy().saveWithoutBackup().entity(new ClaimsListSingleton()).now();
inject.setStaticField(Ofy.class, "clock", clock); // For transactional flows.
// For transactional flows
inject.setStaticField(Ofy.class, "clock", clock);
// For SignedMark signature validity
inject.setStaticField(TmchCertificateAuthority.class, "clock", clock);
}
protected void removeServiceExtensionUri(String uri) {

View file

@ -124,7 +124,6 @@ import google.registry.model.registry.Registry.TldState;
import google.registry.model.registry.label.ReservedList;
import google.registry.model.reporting.HistoryEntry;
import google.registry.model.smd.SignedMarkRevocationList;
import google.registry.tmch.TmchCertificateAuthority;
import google.registry.tmch.TmchXmlSignature;
import java.security.GeneralSecurityException;
import java.util.List;
@ -151,11 +150,10 @@ public class DomainApplicationCreateFlowTest
@Before
public void setUp() {
clock.setTo(DateTime.parse("2014-09-09T09:09:09Z"));
setEppInput("domain_create_sunrise_encoded_signed_mark.xml");
createTld("tld", TldState.SUNRISE);
persistResource(Registry.get("tld").asBuilder().setReservedLists(createReservedList()).build());
inject.setStaticField(TmchCertificateAuthority.class, "clock", clock);
clock.setTo(DateTime.parse("2014-09-09T09:09:09Z"));
}
/** Create host and contact entries for testing. */

View file

@ -151,7 +151,6 @@ import google.registry.model.reporting.DomainTransactionRecord.TransactionReport
import google.registry.model.reporting.HistoryEntry;
import google.registry.monitoring.whitebox.EppMetric;
import google.registry.testing.TaskQueueHelper.TaskMatcher;
import google.registry.tmch.TmchCertificateAuthority;
import java.util.Map;
import org.joda.money.CurrencyUnit;
import org.joda.money.Money;
@ -173,8 +172,6 @@ public class DomainCreateFlowTest extends ResourceFlowTestCase<DomainCreateFlow,
@Before
public void initCreateTest() {
// Setting the clock used for SignedMark signature validity.
TmchCertificateAuthority.clock = () -> DateTime.parse("2015-01-01TZ");
createTld("tld");
persistResource(
Registry.get("tld")

View file

@ -73,8 +73,8 @@ public class UpdateSmdCommandTest extends CommandTestCase<UpdateSmdCommand> {
@Before
public void init() {
// Setting the clock used for SignedMark signature validity.
TmchCertificateAuthority.clock = () -> DateTime.parse("2015-01-01TZ");
// For SignedMark signature validity
inject.setStaticField(TmchCertificateAuthority.class, "clock", clock);
inject.setStaticField(Ofy.class, "clock", clock);
createTld("xn--q9jyb4c");
clock.advanceOneMilli();