RDAP: Add "last update of RDAP database" event

The ICANN operational profile says:

1.4.12. An entity object within an RDAP response MUST contain an events
member with the following events:
o An event of eventAction type registration.
o An event of eventAction type last changed. The event of eventAction type last changed MUST be omitted if the Contact Object (as defined in RFC5733) has not been updated since it was created.
o An event of eventAction type last update of RDAP database.

It has similar wording for domains and hosts. The registration and last changed events are already being generated. This CL adds a "last update of RDAP database" event for all three object types. It's very redundant, and I have warned ICANN that "last update" doesn't mean what they might expect in the context of an eventually consistent database, but there we are.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=130279688
This commit is contained in:
mountford 2016-08-15 07:40:37 -07:00 committed by Ben McIlwain
parent 82ab624b36
commit 19da9a1531
30 changed files with 302 additions and 67 deletions

View file

@ -203,36 +203,36 @@ public class RdapJsonFormatterTest {
@Test
public void testRegistrar() throws Exception {
assertThat(
RdapJsonFormatter.makeRdapJsonForRegistrar(registrar, false, LINK_BASE, WHOIS_SERVER))
.isEqualTo(loadJson("rdapjson_registrar.json"));
assertThat(RdapJsonFormatter.makeRdapJsonForRegistrar(
registrar, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_registrar.json"));
}
@Test
public void testHost_ipv4() throws Exception {
assertThat(
RdapJsonFormatter.makeRdapJsonForHost(hostResourceIpv4, false, LINK_BASE, WHOIS_SERVER))
.isEqualTo(loadJson("rdapjson_host_ipv4.json"));
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
hostResourceIpv4, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_host_ipv4.json"));
}
@Test
public void testHost_ipv6() throws Exception {
assertThat(
RdapJsonFormatter.makeRdapJsonForHost(hostResourceIpv6, false, LINK_BASE, WHOIS_SERVER))
.isEqualTo(loadJson("rdapjson_host_ipv6.json"));
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
hostResourceIpv6, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_host_ipv6.json"));
}
@Test
public void testHost_both() throws Exception {
assertThat(
RdapJsonFormatter.makeRdapJsonForHost(hostResourceBoth, false, LINK_BASE, WHOIS_SERVER))
.isEqualTo(loadJson("rdapjson_host_both.json"));
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
hostResourceBoth, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_host_both.json"));
}
@Test
public void testHost_noAddresses() throws Exception {
assertThat(RdapJsonFormatter.makeRdapJsonForHost(
hostResourceNoAddresses, false, LINK_BASE, WHOIS_SERVER))
hostResourceNoAddresses, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_host_no_addresses.json"));
}
@ -244,7 +244,8 @@ public class RdapJsonFormatterTest {
false,
Optional.of(DesignatedContact.Type.REGISTRANT),
LINK_BASE,
WHOIS_SERVER))
WHOIS_SERVER,
clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_registrant.json"));
}
@ -256,7 +257,8 @@ public class RdapJsonFormatterTest {
false,
Optional.of(DesignatedContact.Type.REGISTRANT),
LINK_BASE_NO_TRAILING_SLASH,
WHOIS_SERVER))
WHOIS_SERVER,
clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_registrant.json"));
}
@ -268,7 +270,8 @@ public class RdapJsonFormatterTest {
false,
Optional.of(DesignatedContact.Type.REGISTRANT),
null,
WHOIS_SERVER))
WHOIS_SERVER,
clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_registrant_nobase.json"));
}
@ -280,7 +283,8 @@ public class RdapJsonFormatterTest {
false,
Optional.of(DesignatedContact.Type.ADMIN),
LINK_BASE,
WHOIS_SERVER))
WHOIS_SERVER,
clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_admincontact.json"));
}
@ -292,7 +296,8 @@ public class RdapJsonFormatterTest {
false,
Optional.of(DesignatedContact.Type.TECH),
LINK_BASE,
WHOIS_SERVER))
WHOIS_SERVER,
clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_techcontact.json"));
}
@ -304,23 +309,22 @@ public class RdapJsonFormatterTest {
false,
Optional.<DesignatedContact.Type>absent(),
LINK_BASE,
WHOIS_SERVER))
WHOIS_SERVER,
clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_rolelesscontact.json"));
}
@Test
public void testDomain_full() throws Exception {
assertThat(
RdapJsonFormatter.makeRdapJsonForDomain(
domainResourceFull, false, LINK_BASE, WHOIS_SERVER))
assertThat(RdapJsonFormatter.makeRdapJsonForDomain(
domainResourceFull, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_domain_full.json"));
}
@Test
public void testDomain_noNameservers() throws Exception {
assertThat(
RdapJsonFormatter.makeRdapJsonForDomain(
domainResourceNoNameservers, false, LINK_BASE, WHOIS_SERVER))
assertThat(RdapJsonFormatter.makeRdapJsonForDomain(
domainResourceNoNameservers, false, LINK_BASE, WHOIS_SERVER, clock.nowUtc()))
.isEqualTo(loadJson("rdapjson_domain_no_nameservers.json"));
}