diff -r a8b89fc55a30 -r 936efccc64e6 t/check_tlsa_record.t --- a/t/check_tlsa_record.t Tue May 31 20:50:52 2016 +0200 +++ b/t/check_tlsa_record.t Tue May 31 23:45:16 2016 +0200 @@ -8,20 +8,45 @@ require_ok('Nagios::Check::DNS::check_tlsa_record'); -my $domain = 'ssl.schlittermann.de'; +#HTTP Domains +my $domain = 'ssl.schlittermann.de'; +my $domain2 = 'torproject.org'; +my $domain3 = 'freebsd.org'; + +#smtpdomains +my $sdomain = 'hh.schlittermann.de'; + #Test main() -my $test_main_no_port = Nagios::Check::DNS::check_tlsa_record::main(($domain)); -like($test_main_no_port, qr(OK: .* is valid), 'main() no port'); + +sub test_main() { + my $test_main_default_port = Nagios::Check::DNS::check_tlsa_record::main(($domain)); + like($test_main_default_port, qr(OK: .* is valid), 'main() ok with domain and default port 443'); -my $test_main_no_tlsa = Nagios::Check::DNS::check_tlsa_record::main(('hh.schlittermann.de')); -like($test_main_no_tlsa, qr(WARNING: .*), 'main() no SSL-Cert or no tlsa to dig'); + my $test_main_domain_and_port = Nagios::Check::DNS::check_tlsa_record::main(($sdomain, 25)); + like($test_main_domain_and_port, qr(OK: .* is valid), 'main() ok with domain and port'); + + my $test_main_domain_port_protocol = Nagios::Check::DNS::check_tlsa_record::main(($domain3, 443, 'tcp')); + like($test_main_domain_port_protocol, qr(OK: .* is valid), 'main() ok with domain, port and protocol'); + + my $test_main_no_tlsa = Nagios::Check::DNS::check_tlsa_record::main(($sdomain)); + like($test_main_no_tlsa, qr(WARNING: .*), 'main() warning when no SSL-Certificate is available or dig returns no tlsa'); -my $test_main_domain_and_port = Nagios::Check::DNS::check_tlsa_record::main(('hh.schlittermann.de', 25)); -like($test_main_domain_and_port, qr(OK: .* is valid), 'main() domain and port'); + my $test_main_default_port2 = Nagios::Check::DNS::check_tlsa_record::main(($domain2)); + like($test_main_default_port2, qr(CRITICAL: .* valid), 'main() critical with domain and default port 443'); + +} + +sub test_dig() { -my $test_main_domain_protocol_port = Nagios::Check::DNS::check_tlsa_record::main(('hh.schlittermann.de', 25, 'tcp')); -like($test_main_domain_protocol_port, qr(OK: .* is valid), 'main() domain, protocol and port'); +#my $test_dig_tlsa = Nagios::Check::DNS::check_tlsa_record::dig_tlsa($domain, 25, 'tcp'); +my $test_dig_tlsa = Nagios::Check::DNS::check_tlsa_record::dig_tlsa($domain, 443); +like($test_dig_tlsa, qr(^[0-3]{1}\s[01]{1}\s[0-2]{1}\s[A-F0-9]{56}\s[A-F0-9]{8}), 'dig_tlsa() returnd format looks like an valid answer to dig tlsa'); + +} + +test_main(); +test_dig();