Blame t/01-resolver-opt.t
|
Packit Service |
f6e53a |
# $Id: 01-resolver-opt.t 1573 2017-06-12 11:03:59Z willem $ -*-perl-*-
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
use strict;
|
|
Packit Service |
f6e53a |
use Test::More tests => 30;
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
use Net::DNS;
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
#
|
|
Packit Service |
f6e53a |
# Check that we can set things in new()
|
|
Packit Service |
f6e53a |
#
|
|
Packit Service |
f6e53a |
my %test_config = (
|
|
Packit Service |
f6e53a |
domain => 'net-dns.org',
|
|
Packit Service |
f6e53a |
searchlist => ['net-dns.org', 't.net-dns.org'],
|
|
Packit Service |
f6e53a |
nameservers => ['10.0.0.1', '10.0.0.2'],
|
|
Packit Service |
f6e53a |
debug => 1,
|
|
Packit Service |
f6e53a |
defnames => 0,
|
|
Packit Service |
f6e53a |
dnsrch => 0,
|
|
Packit Service |
f6e53a |
recurse => 0,
|
|
Packit Service |
f6e53a |
retrans => 6,
|
|
Packit Service |
f6e53a |
retry => 5,
|
|
Packit Service |
f6e53a |
persistent_tcp => 1,
|
|
Packit Service |
f6e53a |
persistent_udp => 1,
|
|
Packit Service |
f6e53a |
tcp_timeout => 60,
|
|
Packit Service |
f6e53a |
udp_timeout => 60,
|
|
Packit Service |
f6e53a |
usevc => 1,
|
|
Packit Service |
f6e53a |
port => 54,
|
|
Packit Service |
f6e53a |
srcport => 53,
|
|
Packit Service |
f6e53a |
adflag => 1,
|
|
Packit Service |
f6e53a |
cdflag => 0,
|
|
Packit Service |
f6e53a |
dnssec => 0,
|
|
Packit Service |
f6e53a |
);
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
foreach my $key ( sort keys %test_config ) {
|
|
Packit Service |
f6e53a |
my $resolver = Net::DNS::Resolver->new( $key => $test_config{$key} );
|
|
Packit Service |
f6e53a |
my @returned = $resolver->$key;
|
|
Packit Service |
f6e53a |
my %returned = ( $key => scalar(@returned) > 1 ? [@returned] : shift(@returned) );
|
|
Packit Service |
f6e53a |
is_deeply( $returned{$key}, $test_config{$key}, "$key is correct" );
|
|
Packit Service |
f6e53a |
}
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
#
|
|
Packit Service |
f6e53a |
# Check that new() is vetting things properly.
|
|
Packit Service |
f6e53a |
#
|
|
Packit Service |
f6e53a |
foreach my $test (qw(nameservers searchlist)) {
|
|
Packit Service |
f6e53a |
foreach my $input ( {}, \1 ) {
|
|
Packit Service |
f6e53a |
my $res = eval { Net::DNS::Resolver->new( $test => $input ); };
|
|
Packit Service |
f6e53a |
ok( $@, 'Invalid input caught' );
|
|
Packit Service |
f6e53a |
ok( !$res, 'No resolver returned' );
|
|
Packit Service |
f6e53a |
}
|
|
Packit Service |
f6e53a |
}
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
my %bad_input = (
|
|
Packit Service |
f6e53a |
errorstring => 'set',
|
|
Packit Service |
f6e53a |
answerfrom => 'set',
|
|
Packit Service |
f6e53a |
answersize => 'set',
|
|
Packit Service |
f6e53a |
);
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
while ( my ( $key, $value ) = each %bad_input ) {
|
|
Packit Service |
f6e53a |
my $res = Net::DNS::Resolver->new( $key => $value );
|
|
Packit Service |
f6e53a |
isnt( $res->{$key}, 'set', "$key is not set" );
|
|
Packit Service |
f6e53a |
}
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
|
|
Packit Service |
f6e53a |
exit;
|
|
Packit Service |
f6e53a |
|