equal
deleted
inserted
replaced
|
1 use strict; |
|
2 use warnings; |
1 use Test::More qw(no_plan); |
3 use Test::More qw(no_plan); |
2 use Test::Exception; |
4 use Test::Exception; |
3 |
5 |
4 use_ok 'Nagios::Check::DNS::check_tlsa_record' or BAIL_OUT; |
6 use_ok 'Nagios::Check::DNS::check_tlsa_record' or BAIL_OUT; |
5 can_ok 'Nagios::Check::DNS::check_tlsa_record', qw(dig_tlsa) or BAIL_OUT; |
7 can_ok 'Nagios::Check::DNS::check_tlsa_record', qw(dig_tlsa) or BAIL_OUT; |
13 dies_ok { dig_tlsa('example.org') } 'API: dig_tlsa() missing port'; |
15 dies_ok { dig_tlsa('example.org') } 'API: dig_tlsa() missing port'; |
14 }; |
16 }; |
15 |
17 |
16 # get and compare the TLSA records via dig_tlsa with `dig …` |
18 # get and compare the TLSA records via dig_tlsa with `dig …` |
17 subtest 'Data' => sub { |
19 subtest 'Data' => sub { |
18 foreach (['ssl.schlittermann.de' => 443], ['mx1.mailbox.org.de' => 25],) { |
20 foreach (['ssl.schlittermann.de' => 443], ['mx1.mailbox.org' => 25], ['ssl.kugelbus.de' => 443]) { |
19 my ($domain, $port) = @$_; |
21 my ($domain, $port) = @$_; |
20 is dig_tlsa($domain, $port), |
22 my (@tlsa) = map { /^_$port._tcp.\S+\s+\d+\s+IN\s+TLSA\s+(.*\n)/i } `dig tlsa _$port._tcp.$domain`; |
21 `dig +short tlsa _$port._tcp.$domain` => "TLSA $domain:$port"; |
23 is dig_tlsa($domain, $port), $tlsa[0] => "TLSA for $domain:$port"; |
22 } |
24 } |
23 }; |
25 }; |