From 20d341f2e5ef45682b6a1f9252940f1158c87c2e Mon Sep 17 00:00:00 2001 From: Maciej Szlosarczyk Date: Thu, 26 Apr 2018 12:18:03 +0300 Subject: [PATCH] Add handling of missing disclaimer --- app/models/whois_record.rb | 2 +- app/views/for_models/whois.erb | 2 ++ test/models/whois_record_test.rb | 9 ++++++++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/app/models/whois_record.rb b/app/models/whois_record.rb index 42ea0b2fa..e4ccec22f 100644 --- a/app/models/whois_record.rb +++ b/app/models/whois_record.rb @@ -36,7 +36,7 @@ class WhoisRecord < ActiveRecord::Base registrant = domain.registrant @disclosed = [] - h[:disclaimer] = disclaimer_text + h[:disclaimer] = disclaimer_text if disclaimer_text.present? h[:name] = domain.name h[:status] = domain.statuses.map { |x| status_map[x] || x } h[:registered] = domain.registered_at.try(:to_s, :iso8601) diff --git a/app/views/for_models/whois.erb b/app/views/for_models/whois.erb index 04abd3094..5bc1b30f5 100644 --- a/app/views/for_models/whois.erb +++ b/app/views/for_models/whois.erb @@ -1,5 +1,7 @@ +<%- if json['disclaimer'].present? %> <%= json['disclaimer'].scan(/\S.{0,72}\S(?=\s|$)|\S+/).join("\n") %> +<%- end %> Estonia .ee Top Level Domain WHOIS server Domain: diff --git a/test/models/whois_record_test.rb b/test/models/whois_record_test.rb index ea8de006a..9d050bc29 100644 --- a/test/models/whois_record_test.rb +++ b/test/models/whois_record_test.rb @@ -6,6 +6,7 @@ class WhoisRecordTest < ActiveSupport::TestCase @domain = domains(:shop) @record = WhoisRecord.new(domain: @domain) + @record.populate end def test_generated_json_has_expected_values @@ -46,8 +47,14 @@ class WhoisRecordTest < ActiveSupport::TestCase regexp_contact = Regexp.new(expected_technical_contact, Regexp::MULTILINE) regexp_disclaimer = Regexp.new(expected_disclaimer, Regexp::MULTILINE) - @record.populate assert_match(regexp_disclaimer, @record.body) assert_match(regexp_contact, @record.body) end + + def test_whois_record_has_no_disclaimer_if_Setting_is_blank + Setting.stubs(:registry_whois_disclaimer, '') do + refute(@record.json['disclaimer']) + refute_match(/Search results may not be used for commercial/, @record.body) + end + end end