internetee-registry/test/models/whois/record_test.rb
Artur Beljajev 42e8f86dae Integrate auction
Closes #874
2019-01-18 18:06:54 +02:00

67 lines
2.2 KiB
Ruby

require 'test_helper'
class Whois::RecordTest < ActiveSupport::TestCase
fixtures 'whois/records'
setup do
@original_disclaimer_setting = Setting.registry_whois_disclaimer
end
teardown do
Setting.registry_whois_disclaimer = @original_disclaimer_setting
end
def test_reads_disclaimer_from_settings
Setting.registry_whois_disclaimer = 'test disclaimer'
assert_equal 'test disclaimer', Whois::Record.disclaimer
end
def test_creates_new_whois_record_when_domain_is_at_auction
domain_name = DNS::DomainName.new('some.test')
Setting.registry_whois_disclaimer = 'disclaimer'
domain_name.stub(:at_auction?, true) do
assert_difference 'Whois::Record.count' do
Whois::Record.refresh(domain_name)
end
end
whois_record = Whois::Record.last
assert_equal 'some.test', whois_record.name
assert_equal ({ 'name' => 'some.test',
'status' => 'AtAuction',
'disclaimer' => 'disclaimer' }), whois_record.json
end
def test_refreshes_whois_record_when_domain_auction_reaches_awaiting_payment_state
domain_name = DNS::DomainName.new('some.test')
Setting.registry_whois_disclaimer = 'disclaimer'
whois_records(:one).update!(name: 'some.test')
domain_name.stub(:awaiting_payment?, true) do
Whois::Record.refresh(domain_name)
end
whois_record = Whois::Record.find_by(name: 'some.test')
assert_equal 'some.test', whois_record.name
assert_equal ({ 'name' => 'some.test',
'status' => 'PendingRegistration',
'disclaimer' => 'disclaimer' }), whois_record.json
end
def test_refreshes_whois_record_when_domain_auction_reaches_pending_registration_state
domain_name = DNS::DomainName.new('some.test')
Setting.registry_whois_disclaimer = 'disclaimer'
whois_records(:one).update!(name: 'some.test')
domain_name.stub(:pending_registration?, true) do
Whois::Record.refresh(domain_name)
end
whois_record = Whois::Record.find_by(name: 'some.test')
assert_equal 'some.test', whois_record.name
assert_equal ({ 'name' => 'some.test',
'status' => 'PendingRegistration',
'disclaimer' => 'disclaimer' }), whois_record.json
end
end