Project

General

Profile

« Previous | Next » 

Revision 23bb5a07

Added by Lukas Zapletal over 2 years ago

Refs #34226 - dnscmd nil string error

Signed-off-by: Lukas Zapletal <>

View differences:

modules/dns_dnscmd/dns_dnscmd_main.rb
def enum_records(zone_name, node_name, type)
records = []
response = execute "/EnumRecords", zone_name, "#{node_name}.", "/Type", type, "EnumRecords", error_only: true
response = execute "/EnumRecords", zone_name, "#{node_name}.", "/Type", type, error_only: true
response.each do |line|
line.chomp!
logger.debug "Extracting record from dnscmd output '#{line}'"
test/dns_dnscmd/dnscmd_test.rb
Command completed successfully.
'.split("\n")
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', "domain.local", "host.domain.local.", '/Type', 'A', 'EnumRecords', error_only: true).returns(to_parse)
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', "domain.local", "host.domain.local.", '/Type', 'A', error_only: true).returns(to_parse)
assert_equal ['192.168.33.33', '192.168.33.34'], Proxy::Dns::Dnscmd::Record.new('server', 999).enum_records('domain.local', 'host.domain.local', 'A')
end
......
Command completed successfully.
'.split("\n")
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', "domain.local", "host.domain.local.", '/Type', 'AAAA', 'EnumRecords', error_only: true).returns(to_parse)
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', "domain.local", "host.domain.local.", '/Type', 'AAAA', error_only: true).returns(to_parse)
assert_equal ['2001:db8:85a3::8a2e:370:7335', '2001:db8:85a3::8a2e:370:7334'], Proxy::Dns::Dnscmd::Record.new('server', 999).enum_records('domain.local', 'host.domain.local', 'AAAA')
end
......
Command completed successfully.
'.split("\n")
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', 'example.com', "alias.example.com.", '/Type', 'CNAME', 'EnumRecords', error_only: true).returns(to_parse)
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', 'example.com', "alias.example.com.", '/Type', 'CNAME', error_only: true).returns(to_parse)
assert_equal ['alias.example.com.'], Proxy::Dns::Dnscmd::Record.new('server', 999).enum_records('example.com', 'alias.example.com', 'CNAME')
end
......
Command completed successfully.
'.split("\n")
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', '33.168.192.in-addr.arpa', "33.33.168.192.in-addr.arpa.", '/Type', 'PTR', 'EnumRecords', error_only: true).returns(to_parse)
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', '33.168.192.in-addr.arpa', "33.33.168.192.in-addr.arpa.", '/Type', 'PTR', error_only: true).returns(to_parse)
assert_equal ['host.domain.local.'], Proxy::Dns::Dnscmd::Record.new('server', 999).enum_records('33.168.192.in-addr.arpa', '33.33.168.192.in-addr.arpa', 'PTR')
end
......
Command completed successfully.
'.split("\n")
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', '33.168.192.in-addr.arpa', "33.33.168.192.in-addr.arpa.", '/Type', 'PTR', 'EnumRecords', error_only: true).returns(to_parse)
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', '33.168.192.in-addr.arpa', "33.33.168.192.in-addr.arpa.", '/Type', 'PTR', error_only: true).returns(to_parse)
assert_equal ['host.domain.local.', 'host2.domain.local.'], Proxy::Dns::Dnscmd::Record.new('server', 999).enum_records('33.168.192.in-addr.arpa', '33.33.168.192.in-addr.arpa', 'PTR')
end
......
Status = 9714 (0x000025f2)
Command failed: DNS_ERROR_NAME_DOES_NOT_EXIST 9714 0x25F2
'.split("\n")
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', '33.168.192.in-addr.arpa', "33.33.168.192.in-addr.arpa.", '/Type', 'PTR', 'EnumRecords', error_only: true).returns(to_parse)
Proxy::Dns::Dnscmd::Record.any_instance.expects(:execute).with('/EnumRecords', '33.168.192.in-addr.arpa', "33.33.168.192.in-addr.arpa.", '/Type', 'PTR', error_only: true).returns(to_parse)
assert_equal [], Proxy::Dns::Dnscmd::Record.new('server', 999).enum_records('33.168.192.in-addr.arpa', '33.33.168.192.in-addr.arpa', 'PTR')
end
end

Also available in: Unified diff