Blame t/51-DS-SHA1.t

Packit e6c8bb
# $Id: 51-DS-SHA1.t 1352 2015-06-02 08:13:13Z willem $	-*-perl-*-
Packit e6c8bb
#
Packit e6c8bb
Packit e6c8bb
use strict;
Packit e6c8bb
use Test::More;
Packit e6c8bb
use Net::DNS;
Packit e6c8bb
Packit e6c8bb
my @prerequisite = qw(
Packit e6c8bb
		Digest::SHA
Packit e6c8bb
		MIME::Base64
Packit e6c8bb
		Net::DNS::RR::KEY
Packit e6c8bb
		Net::DNS::RR::DS
Packit e6c8bb
		);
Packit e6c8bb
Packit e6c8bb
foreach my $package (@prerequisite) {
Packit e6c8bb
	next if eval "require $package";
Packit e6c8bb
	plan skip_all => "$package not installed";
Packit e6c8bb
	exit;
Packit e6c8bb
}
Packit e6c8bb
Packit e6c8bb
plan tests => 3;
Packit e6c8bb
Packit e6c8bb
Packit e6c8bb
# Simple known-answer tests based upon the examples given in RFC3658, section 2.7
Packit e6c8bb
Packit e6c8bb
my $key = new Net::DNS::RR <<'END';
Packit e6c8bb
dskey.example.	IN	KEY	256 3 1 (
Packit e6c8bb
	AQPwHb4UL1U9RHaU8qP+Ts5bVOU1s7fYbj2b3CCbzNdj
Packit e6c8bb
	4+/ECd18yKiyUQqKqQFWW5T3iVc8SJOKnueJHt/Jb/wt
Packit e6c8bb
	) ; key id = 28668
Packit e6c8bb
END
Packit e6c8bb
Packit e6c8bb
my $ds = new Net::DNS::RR <<'END';
Packit e6c8bb
dskey.example.	IN	DS	28668 1 1 (
Packit e6c8bb
	49fd46e6c4b45c55d4ac69cbd3cd34ac1afe51de
Packit e6c8bb
	;xidez-ticuv-kicur-galah-hehyp-sopys-roges-titap-sakoz-vygat-vyxox
Packit e6c8bb
	)
Packit e6c8bb
END
Packit e6c8bb
Packit e6c8bb
Packit e6c8bb
my $test = create Net::DNS::RR::DS( $key, digtype => 'SHA1', );
Packit e6c8bb
Packit e6c8bb
is( $test->string, $ds->string, 'created DS matches RFC3658 example DS' );
Packit e6c8bb
Packit e6c8bb
ok( $test->verify($key), 'created DS verifies RFC3658 example KEY' );
Packit e6c8bb
Packit e6c8bb
ok( $ds->verify($key), 'RFC3658 example DS verifies example KEY' );
Packit e6c8bb
Packit e6c8bb
$test->print;
Packit e6c8bb
Packit e6c8bb
__END__
Packit e6c8bb
Packit e6c8bb