check_imap.t 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #! /usr/bin/perl -w -I ..
  2. #
  3. # Internet Mail Access Protocol (IMAP) Server Tests via check_imap
  4. #
  5. #
  6. use strict;
  7. use Test::More tests => 7;
  8. use NPTest;
  9. my $host_tcp_smtp = getTestParameter( "host_tcp_smtp", "NP_HOST_TCP_SMTP", "mailhost",
  10. "A host providing an STMP Service (a mail server)");
  11. my $host_tcp_imap = getTestParameter( "host_tcp_imap", "NP_HOST_TCP_IMAP", $host_tcp_smtp,
  12. "A host providing an IMAP Service (a mail server)");
  13. my $host_nonresponsive = getTestParameter( "host_nonresponsive", "NP_HOST_NONRESPONSIVE", "10.0.0.1",
  14. "The hostname of system not responsive to network requests" );
  15. my $hostname_invalid = getTestParameter( "hostname_invalid", "NP_HOSTNAME_INVALID", "nosuchhost",
  16. "An invalid (not known to DNS) hostname" );
  17. my $t;
  18. $t = NPTest->testCmd( "./check_imap $host_tcp_imap" );
  19. cmp_ok( $t->return_code, '==', 0, "Contacted imap" );
  20. $t = NPTest->testCmd( "./check_imap -H $host_tcp_imap -p 143 -w 9 -c 9 -to 10 -e '* OK'" );
  21. cmp_ok( $t->return_code, '==', 0, "Got right response" );
  22. $t = NPTest->testCmd( "./check_imap $host_tcp_imap -p 143 -wt 9 -ct 9 -to 10 -e '* OK'" );
  23. cmp_ok( $t->return_code, '==', 0, "Check old parameter options" );
  24. $t = NPTest->testCmd( "./check_imap $host_nonresponsive" );
  25. cmp_ok( $t->return_code, '==', 2, "Get error with non reponsive host" );
  26. $t = NPTest->testCmd( "./check_imap $hostname_invalid" );
  27. cmp_ok( $t->return_code, '==', 2, "Invalid hostname" );
  28. $t = NPTest->testCmd( "./check_imap -H $host_tcp_imap -e unlikely_string");
  29. cmp_ok( $t->return_code, '==', 1, "Got warning with bad response" );
  30. $t = NPTest->testCmd( "./check_imap -H $host_tcp_imap -e unlikely_string -M crit");
  31. cmp_ok( $t->return_code, '==', 2, "Got critical error with bad response" );