mirror of
https://github.com/internetee/registry.git
synced 2025-06-07 13:15:40 +02:00
46 lines
1.4 KiB
Ruby
46 lines
1.4 KiB
Ruby
require 'test_helper'
|
|
|
|
class NameserverGlueRecordTest < ActiveSupport::TestCase
|
|
setup do
|
|
@nameserver = nameservers(:shop_ns1)
|
|
end
|
|
|
|
def test_invalid_when_glue_record_is_required_and_no_ip_is_provided
|
|
domain = Domain.new(name: 'shop.test')
|
|
nameserver = Nameserver.new(domain: domain, hostname: 'ns1.shop.test')
|
|
|
|
assert nameserver.invalid?
|
|
assert_includes nameserver.errors.full_messages, 'Either IPv4 or IPv6 is required' \
|
|
' for glue record generation'
|
|
end
|
|
|
|
def test_valid_when_glue_record_is_required_and_ipv4_is_provided
|
|
domain = Domain.new(name: 'shop.test')
|
|
nameserver = Nameserver.new(domain: domain, hostname: 'ns1.shop.test')
|
|
nameserver.ipv4 = ['192.0.2.1']
|
|
|
|
assert nameserver.valid?
|
|
end
|
|
|
|
def test_valid_when_glue_record_is_required_and_ipv6_is_provided
|
|
domain = Domain.new(name: 'shop.test')
|
|
nameserver = Nameserver.new(domain: domain, hostname: 'ns1.shop.test')
|
|
nameserver.ipv6 = ['2001:db8::1']
|
|
|
|
assert nameserver.valid?
|
|
end
|
|
|
|
def test_valid_when_glue_record_is_not_required_and_no_ip_is_provided
|
|
domain = Domain.new(name: 'shop.test')
|
|
nameserver = Nameserver.new(domain: domain, hostname: 'ns1.registrar.test')
|
|
|
|
assert nameserver.valid?
|
|
end
|
|
|
|
def test_valid_when_glue_record_is_not_required_and_no_ip_is_provided_substring_match
|
|
domain = Domain.new(name: 'le.test')
|
|
nameserver = Nameserver.new(domain: domain, hostname: 'ns1.shop.test')
|
|
|
|
assert nameserver.valid?
|
|
end
|
|
end
|