Rename method

This commit is contained in:
Artur Beljajev 2019-06-21 17:49:47 +03:00
parent 3b3c9966e7
commit d14fa5b701
6 changed files with 29 additions and 16 deletions

View file

@ -188,7 +188,7 @@ class Contact < ActiveRecord::Base
ver_scope << "(children->'#{type}')::jsonb <@ json_build_array(#{contact.id})::jsonb" ver_scope << "(children->'#{type}')::jsonb <@ json_build_array(#{contact.id})::jsonb"
end end
next if DomainVersion.where("created_at > ?", Time.now - Setting.orphans_contacts_in_months.to_i.months).where(ver_scope.join(" OR ")).any? next if DomainVersion.where("created_at > ?", Time.now - Setting.orphans_contacts_in_months.to_i.months).where(ver_scope.join(" OR ")).any?
next if contact.in_use? next if contact.linked?
contact.destroy contact.destroy
counter.next counter.next
@ -279,7 +279,7 @@ class Contact < ActiveRecord::Base
calculated.delete(Contact::OK) calculated.delete(Contact::OK)
calculated.delete(Contact::LINKED) calculated.delete(Contact::LINKED)
calculated << Contact::OK if calculated.empty?# && valid? calculated << Contact::OK if calculated.empty?# && valid?
calculated << Contact::LINKED if in_use? calculated << Contact::LINKED if linked?
calculated.uniq calculated.uniq
end end
@ -345,7 +345,7 @@ class Contact < ActiveRecord::Base
# no need separate method # no need separate method
# should use only in transaction # should use only in transaction
def destroy_and_clean frame def destroy_and_clean frame
if in_use? if linked?
errors.add(:domains, :exist) errors.add(:domains, :exist)
return false return false
end end
@ -513,7 +513,7 @@ class Contact < ActiveRecord::Base
Country.new(ident_country_code) Country.new(ident_country_code)
end end
def in_use? def linked?
registrant_domains.any? || domain_contacts.any? registrant_domains.any? || domain_contacts.any?
end end

View file

@ -8,7 +8,7 @@ class RegistrantPresenter
:reg_no, :reg_no,
:street, :city, :state, :zip, :country, :street, :city, :state, :zip, :country,
:ident_country, :ident_country,
:in_use?, :linked?,
to: :registrant to: :registrant
def initialize(registrant:, view:) def initialize(registrant:, view:)

View file

@ -10,7 +10,7 @@ uus aadress: <%= contact.email %>
<br><br> <br><br>
E-posti aadressile saadetakse domeeni toimingutega seotud infot, sealhulgas kinnitustaotlused omanikuvahetuse ja domeeni kustutamise korral. E-posti aadressile saadetakse domeeni toimingutega seotud infot, sealhulgas kinnitustaotlused omanikuvahetuse ja domeeni kustutamise korral.
<br><br> <br><br>
<% if contact.in_use? %> <% if contact.linked? %>
Muudatusega seotud domeenid:<br> Muudatusega seotud domeenid:<br>
<%= contact.domain_names_with_roles(locale: :et, line_break: '<br>') %> <%= contact.domain_names_with_roles(locale: :et, line_break: '<br>') %>
<% end %> <% end %>
@ -31,7 +31,7 @@ new address: <%= contact.email %>
<br><br> <br><br>
E-mail addresses are used to send important information regarding your registered domains including applications for approval of registrant change and domain deletion. Please make sure that the update and contact information are correct. E-mail addresses are used to send important information regarding your registered domains including applications for approval of registrant change and domain deletion. Please make sure that the update and contact information are correct.
<br><br> <br><br>
<% if contact.in_use? %> <% if contact.linked? %>
Domains affected by this update:<br> Domains affected by this update:<br>
<%= contact.domain_names_with_roles(line_break: '<br>') %> <%= contact.domain_names_with_roles(line_break: '<br>') %>
<% end %> <% end %>

View file

@ -10,7 +10,7 @@ uus aadress: <%= contact.email %>
E-posti aadressile saadetakse domeeni toimingutega seotud infot, sealhulgas kinnitustaotlused omanikuvahetuse ja domeeni kustutamise korral. E-posti aadressile saadetakse domeeni toimingutega seotud infot, sealhulgas kinnitustaotlused omanikuvahetuse ja domeeni kustutamise korral.
<% if contact.in_use? %> <% if contact.linked? %>
Muudatusega seotud domeenid: Muudatusega seotud domeenid:
<%= contact.domain_names_with_roles(locale: :et) %> <%= contact.domain_names_with_roles(locale: :et) %>
<% end %> <% end %>
@ -32,7 +32,7 @@ new address: <%= contact.email %>
E-mail addresses are used to send important information regarding your registered domains including applications for approval of registrant change and domain deletion. Please make sure that the update and contact information are correct. E-mail addresses are used to send important information regarding your registered domains including applications for approval of registrant change and domain deletion. Please make sure that the update and contact information are correct.
<% if contact.in_use? %> <% if contact.linked? %>
Domains affected by this update: Domains affected by this update:
<%= contact.domain_names_with_roles %> <%= contact.domain_names_with_roles %>
<% end %> <% end %>

View file

@ -67,7 +67,7 @@ RSpec.describe RegistrantPresenter do
zip zip
id_code id_code
reg_no reg_no
in_use? linked?
) )
registrant_delegatable_attributes.each do |attr_name| registrant_delegatable_attributes.each do |attr_name|

View file

@ -13,18 +13,23 @@ class ContactTest < ActiveSupport::TestCase
assert contacts(:invalid).invalid? assert contacts(:invalid).invalid?
end end
def test_in_use_if_acts_as_a_registrant def test_linked_when_in_use_as_registrant
Domain.update_all(registrant_id: @contact)
DomainContact.delete_all DomainContact.delete_all
assert @contact.in_use?
assert @contact.linked?
end end
def test_in_use_if_acts_as_a_domain_contact def test_linked_when_in_use_as_domain_contact
Domain.update_all(registrant_id: contacts(:william)) Domain.update_all(registrant_id: contacts(:william))
assert @contact.in_use? DomainContact.update_all(contact_id: @contact)
assert @contact.linked?
end end
def test_not_in_use_if_acts_as_neither_registrant_nor_domain_contact def test_unlinked_when_not_in_use_as_either_registrant_or_domain_contact
refute contacts(:not_in_use).in_use? contact = unlinked_contact
assert_not contact.linked?
end end
def test_managed_when_identity_codes_match def test_managed_when_identity_codes_match
@ -38,4 +43,12 @@ class ContactTest < ActiveSupport::TestCase
user = RegistrantUser.new(registrant_ident: 'US-12345') user = RegistrantUser.new(registrant_ident: 'US-12345')
assert_not contact.managed_by?(user) assert_not contact.managed_by?(user)
end end
private
def unlinked_contact
Domain.update_all(registrant_id: contacts(:william))
DomainContact.delete_all
contacts(:john)
end
end end