4
0

check_pop.t 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #! /usr/bin/perl -w -I ..
  2. #
  3. # Post Office Protocol (POP) Server Tests via check_pop
  4. #
  5. #
  6. use strict;
  7. use Test::More;
  8. use NPTest;
  9. plan tests => 11;
  10. my $host_tcp_smtp = getTestParameter(
  11. "NP_HOST_TCP_SMTP",
  12. "A host providing an STMP Service (a mail server)",
  13. "mailhost"
  14. );
  15. my $host_tcp_pop = getTestParameter(
  16. "NP_HOST_TCP_POP",
  17. "A host providing a POP Service (a mail server)",
  18. $host_tcp_smtp
  19. );
  20. my $host_tcp_pop_ssl = getTestParameter(
  21. "NP_HOST_TCP_POP_SSL",
  22. "Enable SSL for the host providing a POP Service (a mail server)",
  23. "disabled"
  24. );
  25. my $host_nonresponsive = getTestParameter(
  26. "NP_HOST_NONRESPONSIVE",
  27. "The hostname of system not responsive to network requests",
  28. "10.0.0.1",
  29. );
  30. my $hostname_invalid = getTestParameter(
  31. "NP_HOSTNAME_INVALID",
  32. "An invalid (not known to DNS) hostname",
  33. "nosuchhost",
  34. );
  35. my %exceptions = ( 2 => "No POP Server present?" );
  36. my $t;
  37. my $res;
  38. SKIP: {
  39. skip "SSL Disabled", 6 unless ($host_tcp_pop_ssl ne "disabled");
  40. $res = NPTest->testCmd( "./check_pop -H $host_tcp_pop -S -p 995" );
  41. cmp_ok( $res->return_code, '==', 0, "SSL POP server ok");
  42. $res = NPTest->testCmd( "./check_pop -H $host_tcp_pop -p 995 -w 9 -c 9 -t 10 -S -e '+OK'");
  43. cmp_ok( $res->return_code, '==', 0, "SSL POP server returned +OK");
  44. $res = NPTest->testCmd( "./check_pop $host_tcp_pop -p 995 -wt 9 -ct 9 -to 10 -S -e '+OK'");
  45. cmp_ok( $res->return_code, '==', 0, "SSL Old syntax");
  46. }
  47. SKIP: {
  48. skip "SSL Enabled", 6 unless ($host_tcp_pop_ssl eq "disabled");
  49. $res = NPTest->testCmd( "./check_pop $host_tcp_pop" );
  50. cmp_ok( $res->return_code, '==', 0, "POP server ok");
  51. $res = NPTest->testCmd( "./check_pop -H $host_tcp_pop -p 110 -w 9 -c 9 -t 10 -e '+OK'");
  52. cmp_ok( $res->return_code, '==', 0, "POP server returned +OK");
  53. $res = NPTest->testCmd( "./check_pop $host_tcp_pop -p 110 -wt 9 -ct 9 -to 10 -e '+OK'");
  54. cmp_ok( $res->return_code, '==', 0, "Old syntax");
  55. }
  56. $res = NPTest->testCmd( "./check_pop $host_nonresponsive" );
  57. cmp_ok( $res->return_code, '==', 2, "Non responsive host");
  58. $res = NPTest->testCmd( "./check_pop $hostname_invalid" );
  59. cmp_ok( $res->return_code, '==', 2, "Invalid host");