From bd85e0b33ccd0c431223cbcf4423825e38ea5d4a Mon Sep 17 00:00:00 2001 From: Matt Farnsworth Date: Mon, 2 Nov 2015 15:20:14 +0200 Subject: [PATCH 1/4] Story #104525314 - Test: fix existing brittle unit test, checking for error string. The test expects too much of the error string, which prevents EPP status values from evolving to include new values. CHANGE: only check relevant part of error message string. --- spec/epp/domain_spec.rb | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/spec/epp/domain_spec.rb b/spec/epp/domain_spec.rb index 473ea3cf3..4c5ba2118 100644 --- a/spec/epp/domain_spec.rb +++ b/spec/epp/domain_spec.rb @@ -2444,14 +2444,9 @@ describe 'EPP Domain', epp: true do }) response = epp_plain_request(xml) - response[:results][0][:msg].should == + response[:results][0][:msg].should start_with "Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}status', attribute 's': "\ - "[facet 'enumeration'] The value 'invalidStatus' is not an element of the set "\ - "{'clientDeleteProhibited', 'clientHold', 'clientRenewProhibited', "\ - "'clientTransferProhibited', 'clientUpdateProhibited', 'inactive', "\ - "'ok', 'pendingCreate', 'pendingDelete', 'pendingRenew', 'pendingTransfer', "\ - "'pendingUpdate', 'serverDeleteProhibited', 'serverHold', 'serverRenewProhibited', "\ - "'serverTransferProhibited', 'serverUpdateProhibited'}." + "[facet 'enumeration'] The value 'invalidStatus' is not an element of the set " response[:results][0][:result_code].should == '2001' end From 2c717d247a88b948f6441b2a29aa80a804a96ccc Mon Sep 17 00:00:00 2001 From: Matt Farnsworth Date: Wed, 4 Nov 2015 11:28:55 +0200 Subject: [PATCH 2/4] Story #104525314 - fix typo, wrong braces --- app/models/domain.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/domain.rb b/app/models/domain.rb index c9d669b7d..b70dbe9ae 100644 --- a/app/models/domain.rb +++ b/app/models/domain.rb @@ -399,7 +399,7 @@ class Domain < ActiveRecord::Base def clean_pendings! preclean_pendings self.pending_json = {} - statuses.delete[DomainStatus::PENDING_DELETE_CONFIRMATION] + statuses.delete(DomainStatus::PENDING_DELETE_CONFIRMATION) statuses.delete(DomainStatus::PENDING_UPDATE) statuses.delete(DomainStatus::PENDING_DELETE) status_notes[DomainStatus::PENDING_UPDATE] = '' From eda586d8c483e6b936ed549f943127863625cde3 Mon Sep 17 00:00:00 2001 From: Matt Farnsworth Date: Thu, 5 Nov 2015 12:20:25 +0200 Subject: [PATCH 3/4] Story #104525314 - restore missing change, admin controller flag skips validation --- app/controllers/admin/domains_controller.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/controllers/admin/domains_controller.rb b/app/controllers/admin/domains_controller.rb index 3240db931..562505dc1 100644 --- a/app/controllers/admin/domains_controller.rb +++ b/app/controllers/admin/domains_controller.rb @@ -46,6 +46,7 @@ class Admin::DomainsController < AdminController def update dp = ignore_empty_statuses + @domain.is_admin = true if @domain.update(dp) flash[:notice] = I18n.t('domain_updated') From 68a93a33abd9a96eda5ea5d1326ff1105ed0febe Mon Sep 17 00:00:00 2001 From: Matt Farnsworth Date: Thu, 5 Nov 2015 13:08:53 +0200 Subject: [PATCH 4/4] Story #104525314 - fix xpath, verified must be found on child delete/delete --- app/models/epp/domain.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/epp/domain.rb b/app/models/epp/domain.rb index 4a446d25c..9a9e51b4e 100644 --- a/app/models/epp/domain.rb +++ b/app/models/epp/domain.rb @@ -513,7 +513,7 @@ class Epp::Domain < Domain return false unless valid? if Setting.request_confirmation_on_domain_deletion_enabled && - frame.css('delete').attr('verified').to_s.downcase != 'yes' + frame.css('delete').children.css('delete').attr('verified').to_s.downcase != 'yes' registrant_verification_asked!(frame.to_s, user_id) self.deliver_emails = true # turn on email delivery for epp