From a380668d3ab1975c0018231a2b76995e61169f37 Mon Sep 17 00:00:00 2001 From: Thiago Youssef Date: Wed, 5 Oct 2022 08:07:31 -0300 Subject: [PATCH 1/2] enable trimming for dnskey and email values --- app/models/dnskey.rb | 4 ++++ test/models/contact_test.rb | 8 ++++++++ test/models/dnskey_test.rb | 14 ++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/app/models/dnskey.rb b/app/models/dnskey.rb index 5fa1243f65..cc9d01ac3d 100644 --- a/app/models/dnskey.rb +++ b/app/models/dnskey.rb @@ -80,6 +80,10 @@ def validate_flags errors.add(:flags, :invalid, values: "Valid flags are: #{FLAGS.join(', ')}") end + def public_key=(value) + super(value.strip.delete(' ')) + end + def generate_digest return unless flags == 257 || flags == 256 # require ZoneFlag, but optional SecureEntryPoint diff --git a/test/models/contact_test.rb b/test/models/contact_test.rb index 59cffee883..2953f9b3d0 100644 --- a/test/models/contact_test.rb +++ b/test/models/contact_test.rb @@ -313,6 +313,14 @@ def test_whois_gets_updated_after_contact_save assert_equal domain.whois_record.try(:json).try(:[], 'registrant'), @contact.name end + def test_remove_email_whitespaces + contact = valid_contact + contact.email = ' test@test.test ' + contact.save + + assert_equal contact.email, 'test@test.test' + end + private def make_contact_free_of_domains_where_it_acts_as_a_registrant(contact) diff --git a/test/models/dnskey_test.rb b/test/models/dnskey_test.rb index fa1ca20cce..e3f3eee2e2 100644 --- a/test/models/dnskey_test.rb +++ b/test/models/dnskey_test.rb @@ -55,4 +55,18 @@ def test_ds_digest_type_one assert_equal dns.ds_digest_type, 1 assert_equal dns.ds_digest, '640D173A44D9AF2856FBE282EE64CE11A76DBB84' end + + def test_remove_public_key_whitespaces + dnskey = " AwEAAddt 2AkLfYGKgiEZ B5SmIF8Evr jxNMH6HtxWEA4RJ9Ao6LCWheg8 \n " + + dns = Dnskey.new + dns.domain_id = @domain.id + dns.flags = 257 + dns.protocol = 3 + dns.alg = 8 + dns.public_key = dnskey + dns.save + + assert_equal dns.public_key, @dnskey + end end From 280156409fcc4d6d9629126eaf6ec75be68a68cb Mon Sep 17 00:00:00 2001 From: Thiago Youssef Date: Thu, 6 Oct 2022 06:55:17 -0300 Subject: [PATCH 2/2] fix tests --- app/models/dnskey.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/dnskey.rb b/app/models/dnskey.rb index cc9d01ac3d..86584b700a 100644 --- a/app/models/dnskey.rb +++ b/app/models/dnskey.rb @@ -81,7 +81,7 @@ def validate_flags end def public_key=(value) - super(value.strip.delete(' ')) + super(value&.strip&.delete(' ')) end def generate_digest