diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 73f69e095..000000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml -# Editor-based HTTP Client requests -/httpRequests/ diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index fbdc941de..000000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 522f775f7..000000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/registry.iml b/.idea/registry.iml deleted file mode 100644 index 452ddb22e..000000000 --- a/.idea/registry.iml +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 94a25f7f4..000000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/models/concerns/domain/registry_lockable.rb b/app/models/concerns/domain/registry_lockable.rb index 240694d8e..f34741a22 100644 --- a/app/models/concerns/domain/registry_lockable.rb +++ b/app/models/concerns/domain/registry_lockable.rb @@ -12,11 +12,11 @@ module Domain::RegistryLockable end def apply_registry_lock - # binding.pry return unless registry_lockable? return if locked_by_registrant? transaction do + self.admin_store_statuses_history = self.statuses self.statuses |= LOCK_STATUSES self.locked_by_registrant_at = Time.zone.now alert_registrar_lock_changes!(lock: true) @@ -29,7 +29,7 @@ module Domain::RegistryLockable (statuses & [DomainStatus::PENDING_DELETE_CONFIRMATION, DomainStatus::PENDING_CREATE, DomainStatus::PENDING_UPDATE, DomainStatus::PENDING_DELETE, DomainStatus::PENDING_RENEW, - DomainStatus::PENDING_TRANSFER, DomainStatus::FORCE_DELETE]).empty? + DomainStatus::PENDING_TRANSFER]).empty? end def locked_by_registrant? diff --git a/app/models/domain.rb b/app/models/domain.rb index 703bfadcf..5e8a284d5 100644 --- a/app/models/domain.rb +++ b/app/models/domain.rb @@ -122,7 +122,7 @@ class Domain < ApplicationRecord def status_is_consistant has_error = (hold_status? && statuses.include?(DomainStatus::SERVER_MANUAL_INZONE)) if !has_error && (statuses & DELETE_STATUSES).any? - has_error = statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED + has_error = statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED unless locked_by_registrant? end errors.add(:domains, I18n.t(:object_status_prohibits_operation)) if has_error end diff --git a/app/models/registrant_user.rb b/app/models/registrant_user.rb index 82ace6e89..f7e85c5af 100644 --- a/app/models/registrant_user.rb +++ b/app/models/registrant_user.rb @@ -17,13 +17,12 @@ class RegistrantUser < User Country.new(alpha2_code) end - def companies(company_register = nil) + def companies(company_register = CompanyRegister::Client.new) return [] if ident.include?('-') - [OpenStruct.new(registration_number: '43344412', company_name: 'TestFirma'), - OpenStruct.new(registration_number: '12345678', company_name: 'SuperFirma OU')] + company_register.representation_rights(citizen_personal_code: ident, + citizen_country_code: country.alpha3) end - def contacts(representable: true) Contact.registrant_user_contacts(self, representable: representable) diff --git a/test/models/domain/registry_lockable_test.rb b/test/models/domain/registry_lockable_test.rb index e4398762f..ed1a7d6f2 100644 --- a/test/models/domain/registry_lockable_test.rb +++ b/test/models/domain/registry_lockable_test.rb @@ -30,8 +30,8 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase assert @domain.locked_by_registrant? @domain.remove_registry_lock - assert_not @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED - assert_not @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED assert_not @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED end @@ -156,6 +156,32 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase assert @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED assert @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED + + @domain.remove_registry_lock + + assert @domain.statuses.include? DomainStatus::FORCE_DELETE + assert @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_RENEW_PROHIBITED + end + + def test_set_force_delete_for_locked_domain + assert @domain.apply_registry_lock + + @domain.schedule_force_delete(type: :soft) + @domain.reload + + assert @domain.force_delete_scheduled? + + assert @domain.statuses.include? DomainStatus::FORCE_DELETE + assert @domain.statuses.include? DomainStatus::SERVER_RENEW_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED + + @domain.cancel_force_delete + + assert @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED + assert @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED assert @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED end