implement mechanism of save statuses for force delete and lock

This commit is contained in:
Oleg Hasjanov 2021-07-14 11:16:56 +03:00
parent ec90722bf0
commit 96bc237484
9 changed files with 142 additions and 23 deletions

View file

@ -11,12 +11,62 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
refute(@domain.locked_by_registrant?)
@domain.update(statuses: [DomainStatus::SERVER_TRANSFER_PROHIBITED])
@domain.apply_registry_lock #Raise validation error
@domain.apply_registry_lock # Raise validation error
check_statuses_lockable_domain
assert(@domain.locked_by_registrant?)
end
def test_remove_lockalable_statuses_after_admin_intervention
@domain.apply_registry_lock
assert @domain.locked_by_registrant?
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
deleted_status = @domain.statuses - [DomainStatus::SERVER_DELETE_PROHIBITED]
@domain.update(statuses: deleted_status)
assert_not @domain.locked_by_registrant?
@domain.apply_registry_lock
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_not @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED
end
def test_restore_domain_statuses_after_unlock
@domain.statuses = [DomainStatus::SERVER_UPDATE_PROHIBITED]
@domain.admin_store_statuses_history = [DomainStatus::SERVER_UPDATE_PROHIBITED]
@domain.save
assert @domain.admin_store_statuses_history.include? DomainStatus::SERVER_UPDATE_PROHIBITED
@domain.apply_registry_lock
assert @domain.locked_by_registrant?
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
@domain.remove_registry_lock
assert @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED
assert_not @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED
assert_not @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED
end
def test_add_additinal_status_for_locked_domain
@domain.apply_registry_lock
assert @domain.locked_by_registrant?
assert_equal @domain.statuses.sort, Domain::RegistryLockable::LOCK_STATUSES.sort
@domain.statuses += [DomainStatus::SERVER_RENEW_PROHIBITED]
@domain.admin_store_statuses_history = [DomainStatus::SERVER_RENEW_PROHIBITED]
@domain.save
@domain.remove_registry_lock
assert @domain.statuses.include? DomainStatus::SERVER_RENEW_PROHIBITED
assert_not @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED
assert_not @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED
assert_not @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED
end
def test_lockable_domain_if_remove_some_prohibited_status
refute(@domain.locked_by_registrant?)
@domain.apply_registry_lock
@ -29,7 +79,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
assert @domain.statuses.include? DomainStatus::SERVER_DELETE_PROHIBITED
assert @domain.statuses.include? DomainStatus::SERVER_TRANSFER_PROHIBITED
assert_not @domain.statuses.include? DomainStatus::SERVER_UPDATE_PROHIBITED
assert_not(@domain.locked_by_registrant?)
end
@ -74,7 +124,7 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
@domain.remove_registry_lock
assert_equal(["ok"], @domain.statuses)
assert_equal(['ok'], @domain.statuses)
refute(@domain.locked_by_registrant?)
refute(@domain.locked_by_registrant_at)
end
@ -100,8 +150,8 @@ class DomainRegistryLockableTest < ActiveSupport::TestCase
def check_statuses_lockable_domain
lock_statuses = [DomainStatus::SERVER_UPDATE_PROHIBITED,
DomainStatus::SERVER_DELETE_PROHIBITED,
DomainStatus::SERVER_TRANSFER_PROHIBITED]
DomainStatus::SERVER_DELETE_PROHIBITED,
DomainStatus::SERVER_TRANSFER_PROHIBITED]
@domain.statuses.include? lock_statuses
end