mirror of
https://github.com/internetee/registry.git
synced 2025-06-06 20:55:44 +02:00
Merge pull request #1123 from internetee/skip-auction-for-blocked-and-reserved-domains
Skip auction for blocked and reserved domains
This commit is contained in:
commit
5d61cbf4a8
4 changed files with 45 additions and 1 deletions
|
@ -36,7 +36,7 @@ module Concerns
|
||||||
def release
|
def release
|
||||||
if release_to_auction
|
if release_to_auction
|
||||||
transaction do
|
transaction do
|
||||||
domain_name.sell_at_auction
|
domain_name.sell_at_auction if domain_name.auctionable?
|
||||||
destroy!
|
destroy!
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|
|
@ -69,6 +69,10 @@ module DNS
|
||||||
ReservedDomain.where(name: name).any?
|
ReservedDomain.where(name: name).any?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def auctionable?
|
||||||
|
!not_auctionable?
|
||||||
|
end
|
||||||
|
|
||||||
def to_s
|
def to_s
|
||||||
name
|
name
|
||||||
end
|
end
|
||||||
|
@ -77,6 +81,10 @@ module DNS
|
||||||
|
|
||||||
attr_reader :name
|
attr_reader :name
|
||||||
|
|
||||||
|
def not_auctionable?
|
||||||
|
blocked? || reserved?
|
||||||
|
end
|
||||||
|
|
||||||
def zone_with_same_origin?
|
def zone_with_same_origin?
|
||||||
DNS::Zone.where(origin: name).any?
|
DNS::Zone.where(origin: name).any?
|
||||||
end
|
end
|
||||||
|
|
|
@ -141,4 +141,22 @@ class DNS::DomainNameTest < ActiveSupport::TestCase
|
||||||
assert domain_name.not_registered?
|
assert domain_name.not_registered?
|
||||||
assert_not domain_name.registered?
|
assert_not domain_name.registered?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_auctionable_when_not_blocked_or_reserved
|
||||||
|
domain_name = DNS::DomainName.new('shop.test')
|
||||||
|
assert_not domain_name.blocked?
|
||||||
|
assert_not domain_name.reserved?
|
||||||
|
|
||||||
|
assert domain_name.auctionable?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_not_auctionable_when_blocked
|
||||||
|
assert_equal 'blocked.test', blocked_domains(:one).name
|
||||||
|
assert_not DNS::DomainName.new('blocked.test').auctionable?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_not_auctionable_when_reserved
|
||||||
|
assert_equal 'reserved.test', reserved_domains(:one).name
|
||||||
|
assert_not DNS::DomainName.new('reserved.test').auctionable?
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -22,6 +22,24 @@ class DomainReleasableAuctionableTest < ActiveSupport::TestCase
|
||||||
assert @domain.domain_name.at_auction?
|
assert @domain.domain_name.at_auction?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_skips_auction_when_domains_is_blocked
|
||||||
|
assert_equal 'shop.test', @domain.name
|
||||||
|
blocked_domains(:one).update!(name: 'shop.test')
|
||||||
|
|
||||||
|
@domain.release
|
||||||
|
|
||||||
|
assert_not @domain.domain_name.at_auction?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_skips_auction_when_domains_is_reserved
|
||||||
|
assert_equal 'shop.test', @domain.name
|
||||||
|
reserved_domains(:one).update!(name: 'shop.test')
|
||||||
|
|
||||||
|
@domain.release
|
||||||
|
|
||||||
|
assert_not @domain.domain_name.at_auction?
|
||||||
|
end
|
||||||
|
|
||||||
def test_deletes_registered_domain
|
def test_deletes_registered_domain
|
||||||
@domain.update!(delete_at: Time.zone.parse('2010-07-05 07:59'))
|
@domain.update!(delete_at: Time.zone.parse('2010-07-05 07:59'))
|
||||||
travel_to Time.zone.parse('2010-07-05 08:00')
|
travel_to Time.zone.parse('2010-07-05 08:00')
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue