1 #! /usr/bin/perl |
1 #! /usr/bin/perl |
2 |
2 |
3 use strict; |
3 use strict; |
4 use warnings; |
4 use warnings; |
5 use Test::More qw(no_plan); |
5 use Test::More qw(no_plan); |
6 use Test::Exception; |
|
7 |
6 |
8 BEGIN { use_ok 'Nagios::Check::DNS::check_tlsa_record' => qw(dig_tlsa) }; |
7 BEGIN { use_ok('Nagios::Check::DNS::check_tlsa_record') }; |
9 |
8 |
10 dies_ok { dig_tlsa('ssl.schlittermann.de') } 'dies on missing port number'; |
9 require_ok('Nagios::Check::DNS::check_tlsa_record'); |
11 |
10 |
12 foreach (['ssl.schlittermann.de' => 443], ['mx1.mailbox.org' => 25]) { |
11 my $domain = 'ssl.schlittermann.de'; |
13 my ($host, $port) = @$_; |
12 |
14 is dig_tlsa($host, $port), `dig tlsa _$port._tcp.$host +short` => "TLSA for _$port._tcp.$host"; |
13 #Test main() |
15 } |
14 my $test_main_no_port = Nagios::Check::DNS::check_tlsa_record::main(($domain)); |
|
15 like($test_main_no_port, qr(OK: .* is valid), 'main() no port'); |
|
16 |
|
17 my $test_main_no_tlsa = Nagios::Check::DNS::check_tlsa_record::main(('hh.schlittermann.de')); |
|
18 like($test_main_no_tlsa, qr(WARNING: .*), 'main() no SSL-Cert or no tlsa to dig'); |
|
19 |
|
20 my $test_main_domain_and_port = Nagios::Check::DNS::check_tlsa_record::main(('hh.schlittermann.de', 25)); |
|
21 like($test_main_domain_and_port, qr(OK: .* is valid), 'main() domain and port'); |
|
22 |
|
23 my $test_main_domain_protocol_port = Nagios::Check::DNS::check_tlsa_record::main(('hh.schlittermann.de', 25, 'tcp')); |
|
24 like($test_main_domain_protocol_port, qr(OK: .* is valid), 'main() domain, protocol and port'); |
|
25 |
|
26 |
16 |
27 |
17 #@TODO write tests |
28 #@TODO write tests |
18 #my $return = Nagios::Check::DNS::check_tlsa_record::main(($domain, $port)); |
|
19 #say $return; |
|
20 |
|
21 #my $return = Nagios::Check::DNS::check_tlsa_record::main(); |
|
22 #say $return; |
|
23 |
|
24 #my $return5 = Nagios::Check::DNS::check_tlsa_record::main(qw(hh.schlittermann.de 25 tcp)); |
|
25 #say $return5; |
|
26 |
|
27 #my $return2 = Nagios::Check::DNS::check_tlsa_record::dig_tlsa(qw(hh.schlittermann.de 25 udp)); |
29 #my $return2 = Nagios::Check::DNS::check_tlsa_record::dig_tlsa(qw(hh.schlittermann.de 25 udp)); |
28 #say $return2; |
30 #say $return2; |
29 # |
31 # |
30 #my $return3 = Nagios::Check::DNS::check_tlsa_record::dig_tlsa(qw(hh.schlittermann.de 25)); |
32 #my $return3 = Nagios::Check::DNS::check_tlsa_record::dig_tlsa(qw(hh.schlittermann.de 25)); |
31 #say $return3; |
33 #say $return3; |