File: 30-asynchronous.t

package info (click to toggle)
libnet-dns-resolver-unbound-perl 1.32-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 180 kB
  • sloc: perl: 586; makefile: 5
file content (39 lines) | stat: -rw-r--r-- 1,000 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/usr/bin/perl
#

use strict;
use warnings;
use Test::More;

use Net::DNS::Resolver::Unbound;

my $resolver = Net::DNS::Resolver::Unbound->new();

plan skip_all => 'network tests disabled via NO_NETWORK' if $ENV{NO_NETWORK};
plan skip_all => 'resolver not loaded' unless $resolver;
plan skip_all => 'no local nameserver' unless $resolver->nameserver;
plan tests    => 7;


my $fqdn = 'www.net-dns.org.';

for ( my $handle = $resolver->bgsend($fqdn) ) {
	ok( $handle, "resolver->bgsend('$fqdn')" );
	my $reply = $resolver->bgread($handle);
	ok( $reply,	   'resolver->bgread(handle)' );
	ok( !$handle->err, 'handle->err empty' );
}


my $packet = $resolver->_make_query_packet($fqdn);
for ( my $handle = $resolver->bgsend($packet) ) {
	ok( $handle, "resolver->bgsend(packet)" );
	my $reply = $resolver->bgread($handle);
	ok( $reply,	   'resolver->bgread(handle)' );
	ok( !$handle->err, 'handle->err empty' );
	is( $reply->header->id, $packet->header->id, 'reply ID matches query packet' );
}


exit;