Blame t/42-DNSKEY-flags.t

Packit Service f6e53a
# $Id: 42-DNSKEY-flags.t 1367 2015-06-29 08:53:56Z willem $	-*-perl-*-
Packit Service f6e53a
#
Packit Service f6e53a
Packit Service f6e53a
use strict;
Packit Service f6e53a
use Test::More;
Packit Service f6e53a
use Net::DNS;
Packit Service f6e53a
Packit Service f6e53a
my @prerequisite = qw(
Packit Service f6e53a
		MIME::Base64
Packit Service f6e53a
		Net::DNS::RR::DNSKEY;
Packit Service f6e53a
		);
Packit Service f6e53a
Packit Service f6e53a
foreach my $package (@prerequisite) {
Packit Service f6e53a
	next if eval "require $package";
Packit Service f6e53a
	plan skip_all => "$package not installed";
Packit Service f6e53a
	exit;
Packit Service f6e53a
}
Packit Service f6e53a
Packit Service f6e53a
plan tests => 16;
Packit Service f6e53a
Packit Service f6e53a
Packit Service f6e53a
my $dnskey = new Net::DNS::RR <<'END';
Packit Service f6e53a
RSASHA1.example.	IN	DNSKEY	256 3 5 (
Packit Service f6e53a
	AwEAAZHbngk6sMoFHN8fsYY6bmGR4B9UYJIqDp+mORLEH53Xg0f6RMDtfx+H3/x7bHTUikTr26bV
Packit Service f6e53a
	AqsxOs2KxyJ2Xx9RGG0DB9O4gpANljtTq2tLjvaQknhJpSq9vj4CqUtr6Wu152J2aQYITBoQLHDV
Packit Service f6e53a
	i8mIIunparIKDmhy8TclVXg9 ; Key ID = 1623
Packit Service f6e53a
	)
Packit Service f6e53a
END
Packit Service f6e53a
Packit Service f6e53a
ok( $dnskey, 'set up DNSKEY record' );
Packit Service f6e53a
Packit Service f6e53a
$dnskey->flags(0);
Packit Service f6e53a
foreach my $flag ( qw(sep zone revoke) ) {
Packit Service f6e53a
	my $boolean = $dnskey->$flag(0);
Packit Service f6e53a
	ok( !$boolean, "Boolean $flag flag has expected value" );
Packit Service f6e53a
Packit Service f6e53a
	my $keytag = $dnskey->keytag;
Packit Service f6e53a
	$dnskey->$flag( !$boolean );
Packit Service f6e53a
	ok( $dnskey->$flag, "Boolean $flag flag toggled" );
Packit Service f6e53a
	isnt( $dnskey->keytag, $keytag, "keytag recalculated using modified $flag flag" );
Packit Service f6e53a
Packit Service f6e53a
	$dnskey->$flag($boolean);
Packit Service f6e53a
	ok( !$dnskey->$flag, "Boolean $flag flag restored" );
Packit Service f6e53a
Packit Service f6e53a
	is( $dnskey->keytag, $keytag, "keytag recalculated using restored $flag flag" );
Packit Service f6e53a
}
Packit Service f6e53a
Packit Service f6e53a
exit;
Packit Service f6e53a
Packit Service f6e53a
__END__
Packit Service f6e53a
Packit Service f6e53a