diff --git a/java/google/registry/whois/WhoisResponseImpl.java b/java/google/registry/whois/WhoisResponseImpl.java index a389aec23..917fbc6e2 100644 --- a/java/google/registry/whois/WhoisResponseImpl.java +++ b/java/google/registry/whois/WhoisResponseImpl.java @@ -157,7 +157,7 @@ abstract class WhoisResponseImpl implements WhoisResponse { /** Returns raw text that should be appended to the end of ALL WHOIS responses. */ E emitFooter(String disclaimer) { - stringBuilder.append(disclaimer).append("\r\n"); + stringBuilder.append(disclaimer.replaceAll("\r?\n", "\r\n").trim()).append("\r\n"); return thisCastToDerived(); } diff --git a/javatests/google/registry/whois/DomainWhoisResponseTest.java b/javatests/google/registry/whois/DomainWhoisResponseTest.java index 9326eef26..0eec84bf9 100644 --- a/javatests/google/registry/whois/DomainWhoisResponseTest.java +++ b/javatests/google/registry/whois/DomainWhoisResponseTest.java @@ -254,7 +254,10 @@ public class DomainWhoisResponseTest { public void getPlainTextOutputTest() { DomainWhoisResponse domainWhoisResponse = new DomainWhoisResponse(domainResource, clock.nowUtc()); - assertThat(domainWhoisResponse.getResponse(false, "Doodle Disclaimer")) + assertThat( + domainWhoisResponse.getResponse( + false, + "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested.")) .isEqualTo(WhoisResponseResults.create(loadWhoisTestFile("whois_domain.txt"), 1)); } @@ -263,7 +266,13 @@ public class DomainWhoisResponseTest { DomainWhoisResponse domainWhoisResponse = new DomainWhoisResponse( domainResource.asBuilder().setStatusValues(null).build(), clock.nowUtc()); - assertThat(domainWhoisResponse.getResponse(false, "Doodle Disclaimer").plainTextOutput()) + assertThat( + domainWhoisResponse + .getResponse( + false, + "Doodle Disclaimer\nI exist so that carriage return\n" + + "in disclaimer can be tested.") + .plainTextOutput()) .contains("Domain Status: ok"); } } diff --git a/javatests/google/registry/whois/NameserverWhoisResponseTest.java b/javatests/google/registry/whois/NameserverWhoisResponseTest.java index 317627b47..f899fe8b5 100644 --- a/javatests/google/registry/whois/NameserverWhoisResponseTest.java +++ b/javatests/google/registry/whois/NameserverWhoisResponseTest.java @@ -76,7 +76,10 @@ public class NameserverWhoisResponseTest { public void testGetTextOutput() { NameserverWhoisResponse nameserverWhoisResponse = new NameserverWhoisResponse(hostResource1, clock.nowUtc()); - assertThat(nameserverWhoisResponse.getResponse(false, "Doodle Disclaimer")) + assertThat( + nameserverWhoisResponse.getResponse( + false, + "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested.")) .isEqualTo(WhoisResponseResults.create(loadWhoisTestFile("whois_nameserver.txt"), 1)); } @@ -84,7 +87,10 @@ public class NameserverWhoisResponseTest { public void testGetMultipleNameserversResponse() { NameserverWhoisResponse nameserverWhoisResponse = new NameserverWhoisResponse(ImmutableList.of(hostResource1, hostResource2), clock.nowUtc()); - assertThat(nameserverWhoisResponse.getResponse(false, "Doodle Disclaimer")) + assertThat( + nameserverWhoisResponse.getResponse( + false, + "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested.")) .isEqualTo( WhoisResponseResults.create(loadWhoisTestFile("whois_multiple_nameservers.txt"), 2)); } diff --git a/javatests/google/registry/whois/RegistrarWhoisResponseTest.java b/javatests/google/registry/whois/RegistrarWhoisResponseTest.java index 006c67122..d5300f06a 100644 --- a/javatests/google/registry/whois/RegistrarWhoisResponseTest.java +++ b/javatests/google/registry/whois/RegistrarWhoisResponseTest.java @@ -115,7 +115,10 @@ public class RegistrarWhoisResponseTest { RegistrarWhoisResponse registrarWhoisResponse = new RegistrarWhoisResponse(registrar, clock.nowUtc()); - assertThat(registrarWhoisResponse.getResponse(false, "Doodle Disclaimer")) + assertThat( + registrarWhoisResponse.getResponse( + false, + "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested.")) .isEqualTo(WhoisResponseResults.create(loadWhoisTestFile("whois_registrar.txt"), 1)); } @@ -127,6 +130,7 @@ public class RegistrarWhoisResponseTest { RegistrarWhoisResponse registrarWhoisResponse = new RegistrarWhoisResponse(registrar, clock.nowUtc()); // Just make sure this doesn't NPE. - registrarWhoisResponse.getResponse(false, "Doodle Disclaimer"); + registrarWhoisResponse.getResponse( + false, "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested."); } } diff --git a/javatests/google/registry/whois/WhoisHttpServerTest.java b/javatests/google/registry/whois/WhoisHttpServerTest.java index ac17aa35f..4010ccded 100644 --- a/javatests/google/registry/whois/WhoisHttpServerTest.java +++ b/javatests/google/registry/whois/WhoisHttpServerTest.java @@ -80,7 +80,8 @@ public class WhoisHttpServerTest { whoisServer.whoisReader = new WhoisReader(new WhoisCommandFactory()); whoisServer.whoisMetrics = new WhoisMetrics(); whoisServer.metricBuilder = WhoisMetric.builderForRequest(clock); - whoisServer.disclaimer = "Doodle Disclaimer"; + whoisServer.disclaimer = + "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested."; return whoisServer; } diff --git a/javatests/google/registry/whois/WhoisServerTest.java b/javatests/google/registry/whois/WhoisServerTest.java index 7330635b2..535fc39e9 100644 --- a/javatests/google/registry/whois/WhoisServerTest.java +++ b/javatests/google/registry/whois/WhoisServerTest.java @@ -78,7 +78,8 @@ public class WhoisServerTest { whoisServer.whoisReader = new WhoisReader(new WhoisCommandFactory()); whoisServer.whoisMetrics = new WhoisMetrics(); whoisServer.metricBuilder = WhoisMetric.builderForRequest(clock); - whoisServer.disclaimer = "Doodle Disclaimer"; + whoisServer.disclaimer = + "Doodle Disclaimer\nI exist so that carriage return\nin disclaimer can be tested."; whoisServer.retrier = new Retrier(new FakeSleeper(clock), 3); return whoisServer; } diff --git a/javatests/google/registry/whois/testdata/whois_domain.txt b/javatests/google/registry/whois/testdata/whois_domain.txt index bad864d36..e1e4109d2 100644 --- a/javatests/google/registry/whois/testdata/whois_domain.txt +++ b/javatests/google/registry/whois/testdata/whois_domain.txt @@ -63,3 +63,5 @@ URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/ For more information on Whois status codes, please visit https://icann.org/epp Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_multiple_nameservers.txt b/javatests/google/registry/whois/testdata/whois_multiple_nameservers.txt index ff311df31..4357228d8 100644 --- a/javatests/google/registry/whois/testdata/whois_multiple_nameservers.txt +++ b/javatests/google/registry/whois/testdata/whois_multiple_nameservers.txt @@ -14,3 +14,5 @@ Registrar URL: http://www.referral.example/path >>> Last update of WHOIS database: 2009-05-29T20:15:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_nameserver.txt b/javatests/google/registry/whois/testdata/whois_nameserver.txt index 26fed0eeb..2fc974325 100644 --- a/javatests/google/registry/whois/testdata/whois_nameserver.txt +++ b/javatests/google/registry/whois/testdata/whois_nameserver.txt @@ -7,3 +7,5 @@ Registrar URL: http://www.referral.example/path >>> Last update of WHOIS database: 2009-05-29T20:15:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_registrar.txt b/javatests/google/registry/whois/testdata/whois_registrar.txt index 29dd6b275..6536e8b18 100644 --- a/javatests/google/registry/whois/testdata/whois_registrar.txt +++ b/javatests/google/registry/whois/testdata/whois_registrar.txt @@ -24,3 +24,5 @@ Email: johngeek@example-registrar.tld >>> Last update of WHOIS database: 2009-05-29T20:15:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_domain.txt b/javatests/google/registry/whois/testdata/whois_server_domain.txt index afa37476a..658251b47 100644 --- a/javatests/google/registry/whois/testdata/whois_server_domain.txt +++ b/javatests/google/registry/whois/testdata/whois_server_domain.txt @@ -61,3 +61,5 @@ URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/ For more information on Whois status codes, please visit https://icann.org/epp Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_domain_not_found.txt b/javatests/google/registry/whois/testdata/whois_server_domain_not_found.txt index f132c9269..836eb40d5 100644 --- a/javatests/google/registry/whois/testdata/whois_server_domain_not_found.txt +++ b/javatests/google/registry/whois/testdata/whois_server_domain_not_found.txt @@ -2,3 +2,5 @@ Domain not found. >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_idn_punycode.txt b/javatests/google/registry/whois/testdata/whois_server_idn_punycode.txt index 3c6100b84..040024cc7 100644 --- a/javatests/google/registry/whois/testdata/whois_server_idn_punycode.txt +++ b/javatests/google/registry/whois/testdata/whois_server_idn_punycode.txt @@ -61,3 +61,5 @@ URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/ For more information on Whois status codes, please visit https://icann.org/epp Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_idn_utf8.txt b/javatests/google/registry/whois/testdata/whois_server_idn_utf8.txt index 6c01819aa..79e0841ab 100644 --- a/javatests/google/registry/whois/testdata/whois_server_idn_utf8.txt +++ b/javatests/google/registry/whois/testdata/whois_server_idn_utf8.txt @@ -61,3 +61,5 @@ URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/ For more information on Whois status codes, please visit https://icann.org/epp Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_ip_not_found.txt b/javatests/google/registry/whois/testdata/whois_server_ip_not_found.txt index 45d055dd0..636bcf2a0 100644 --- a/javatests/google/registry/whois/testdata/whois_server_ip_not_found.txt +++ b/javatests/google/registry/whois/testdata/whois_server_ip_not_found.txt @@ -2,3 +2,5 @@ No nameservers found. >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_malformed_path.txt b/javatests/google/registry/whois/testdata/whois_server_malformed_path.txt index 5cd70319e..6bbd66f93 100644 --- a/javatests/google/registry/whois/testdata/whois_server_malformed_path.txt +++ b/javatests/google/registry/whois/testdata/whois_server_malformed_path.txt @@ -2,3 +2,5 @@ Malformed path query. >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_nameserver.txt b/javatests/google/registry/whois/testdata/whois_server_nameserver.txt index 9119354cc..dad7e7284 100644 --- a/javatests/google/registry/whois/testdata/whois_server_nameserver.txt +++ b/javatests/google/registry/whois/testdata/whois_server_nameserver.txt @@ -6,3 +6,5 @@ Registrar URL: http://www.referral.example/path >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_nameserver_not_found.txt b/javatests/google/registry/whois/testdata/whois_server_nameserver_not_found.txt index e0ef9ac8e..a7f9fe29f 100644 --- a/javatests/google/registry/whois/testdata/whois_server_nameserver_not_found.txt +++ b/javatests/google/registry/whois/testdata/whois_server_nameserver_not_found.txt @@ -2,3 +2,5 @@ Nameserver not found. >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_no_command.txt b/javatests/google/registry/whois/testdata/whois_server_no_command.txt index f808b5355..eb18903e1 100644 --- a/javatests/google/registry/whois/testdata/whois_server_no_command.txt +++ b/javatests/google/registry/whois/testdata/whois_server_no_command.txt @@ -2,3 +2,5 @@ No WHOIS command specified. >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_registrar.txt b/javatests/google/registry/whois/testdata/whois_server_registrar.txt index fe0b6dd88..e3a847cef 100644 --- a/javatests/google/registry/whois/testdata/whois_server_registrar.txt +++ b/javatests/google/registry/whois/testdata/whois_server_registrar.txt @@ -20,3 +20,5 @@ Email: johndoe@example.com >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested. diff --git a/javatests/google/registry/whois/testdata/whois_server_registrar_not_found.txt b/javatests/google/registry/whois/testdata/whois_server_registrar_not_found.txt index a21a15f9d..d2568dc33 100644 --- a/javatests/google/registry/whois/testdata/whois_server_registrar_not_found.txt +++ b/javatests/google/registry/whois/testdata/whois_server_registrar_not_found.txt @@ -2,3 +2,5 @@ No registrar found. >>> Last update of WHOIS database: 2009-06-29T20:13:00Z <<< Doodle Disclaimer +I exist so that carriage return +in disclaimer can be tested.