mirror of
https://github.com/internetee/registry.git
synced 2025-07-01 16:53:37 +02:00
Multiple ok statuses fix
This commit is contained in:
parent
a95927c22f
commit
4615e99527
2 changed files with 23 additions and 1 deletions
|
@ -301,7 +301,7 @@ class Domain < ActiveRecord::Base
|
||||||
def manage_automatic_statuses
|
def manage_automatic_statuses
|
||||||
if domain_statuses.empty? && valid?
|
if domain_statuses.empty? && valid?
|
||||||
domain_statuses.create(value: DomainStatus::OK)
|
domain_statuses.create(value: DomainStatus::OK)
|
||||||
else
|
elsif domain_statuses.length > 1 || !valid?
|
||||||
domain_statuses.find_by(value: DomainStatus::OK).try(:destroy)
|
domain_statuses.find_by(value: DomainStatus::OK).try(:destroy)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -95,6 +95,28 @@ describe Domain do
|
||||||
d = Fabricate(:domain)
|
d = Fabricate(:domain)
|
||||||
expect(d.auth_info).to_not be_empty
|
expect(d.auth_info).to_not be_empty
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'manages statuses automatically' do
|
||||||
|
d = Fabricate(:domain)
|
||||||
|
expect(d.domain_statuses.count).to eq(1)
|
||||||
|
expect(d.domain_statuses.first.value).to eq(DomainStatus::OK)
|
||||||
|
|
||||||
|
d.period = 2
|
||||||
|
d.save
|
||||||
|
|
||||||
|
d.reload
|
||||||
|
|
||||||
|
expect(d.domain_statuses.count).to eq(1)
|
||||||
|
expect(d.domain_statuses.first.reload.value).to eq(DomainStatus::OK)
|
||||||
|
|
||||||
|
d.domain_statuses.build(value: DomainStatus::CLIENT_DELETE_PROHIBITED)
|
||||||
|
d.save
|
||||||
|
|
||||||
|
d.reload
|
||||||
|
|
||||||
|
expect(d.domain_statuses.count).to eq(1)
|
||||||
|
expect(d.domain_statuses.first.value).to eq(DomainStatus::CLIENT_DELETE_PROHIBITED)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
with_versioning do
|
with_versioning do
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue