diff options
Diffstat (limited to 'plugins/t')
| -rw-r--r-- | plugins/t/check_smtp.t | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/plugins/t/check_smtp.t b/plugins/t/check_smtp.t index fd09ed22..1a1ebe3e 100644 --- a/plugins/t/check_smtp.t +++ b/plugins/t/check_smtp.t | |||
| @@ -14,6 +14,8 @@ my $host_tcp_smtp_starttls = getTestParameter( "NP_HOST_TCP_SMTP_STARTTLS", | |||
| 14 | "A host providing SMTP with STARTTLS", $host_tcp_smtp); | 14 | "A host providing SMTP with STARTTLS", $host_tcp_smtp); |
| 15 | my $host_tcp_smtp_nostarttls = getTestParameter( "NP_HOST_TCP_SMTP_NOSTARTTLS", | 15 | my $host_tcp_smtp_nostarttls = getTestParameter( "NP_HOST_TCP_SMTP_NOSTARTTLS", |
| 16 | "A host providing SMTP without STARTTLS", ""); | 16 | "A host providing SMTP without STARTTLS", ""); |
| 17 | my $host_tcp_smtp_tls = getTestParameter( "NP_HOST_TCP_SMTP_TLS", | ||
| 18 | "A host providing SMTP with TLS", $host_tcp_smtp); | ||
| 17 | 19 | ||
| 18 | my $host_nonresponsive = getTestParameter( "NP_HOST_NONRESPONSIVE", | 20 | my $host_nonresponsive = getTestParameter( "NP_HOST_NONRESPONSIVE", |
| 19 | "The hostname of system not responsive to network requests", "10.0.0.1" ); | 21 | "The hostname of system not responsive to network requests", "10.0.0.1" ); |
| @@ -22,7 +24,7 @@ my $hostname_invalid = getTestParameter( "NP_HOSTNAME_INVALID", | |||
| 22 | "An invalid (not known to DNS) hostname", "nosuchhost" ); | 24 | "An invalid (not known to DNS) hostname", "nosuchhost" ); |
| 23 | my $res; | 25 | my $res; |
| 24 | 26 | ||
| 25 | plan tests => 10; | 27 | plan tests => 16; |
| 26 | 28 | ||
| 27 | SKIP: { | 29 | SKIP: { |
| 28 | skip "No SMTP server defined", 4 unless $host_tcp_smtp; | 30 | skip "No SMTP server defined", 4 unless $host_tcp_smtp; |
| @@ -42,6 +44,10 @@ SKIP: { | |||
| 42 | local $TODO = "Output is over two lines"; | 44 | local $TODO = "Output is over two lines"; |
| 43 | like ( $res->output, qr/^SMTP WARNING/, "Correct error message" ); | 45 | like ( $res->output, qr/^SMTP WARNING/, "Correct error message" ); |
| 44 | } | 46 | } |
| 47 | |||
| 48 | $res = NPTest->testCmd( "./check_smtp -H $host_tcp_smtp --ssl -p 25" ); | ||
| 49 | is ($res->return_code, 2, "Check rc of connecting to $host_tcp_smtp with TLS on standard SMTP port" ); | ||
| 50 | like ($res->output, qr/^CRITICAL - Cannot make SSL connection\./, "Check output of connecting to $host_tcp_smtp with TLS on standard SMTP port"); | ||
| 45 | } | 51 | } |
| 46 | 52 | ||
| 47 | SKIP: { | 53 | SKIP: { |
| @@ -58,6 +64,18 @@ SKIP: { | |||
| 58 | is ($res->output, "WARNING - TLS not supported by server", "Right error message" ); | 64 | is ($res->output, "WARNING - TLS not supported by server", "Right error message" ); |
| 59 | } | 65 | } |
| 60 | 66 | ||
| 67 | SKIP: { | ||
| 68 | skip "No SMTP server with TLS defined", 1 unless $host_tcp_smtp_tls; | ||
| 69 | $res = NPTest->testCmd( "./check_smtp -H $host_tcp_smtp_tls --ssl" ); | ||
| 70 | is ($res->return_code, 0, "Check rc of connecting to $host_tcp_smtp_tls with TLS" ); | ||
| 71 | like ($res->output, qr/^SMTP OK - /, "Check output of connecting to $host_tcp_smtp_tls with TLS" ); | ||
| 72 | |||
| 73 | my $unused_port = 4465; | ||
| 74 | $res = NPTest->testCmd( "./check_smtp -H $host_tcp_smtp_tls -p $unused_port --ssl" ); | ||
| 75 | is ($res->return_code, 2, "Check rc of connecting to $host_tcp_smtp_tls with TLS on unused port $unused_port" ); | ||
| 76 | like ($res->output, qr/^connect to address $host_tcp_smtp_tls and port $unused_port: Connection refused/, "Check output of connecting to $host_tcp_smtp_tls with TLS on unused port $unused_port"); | ||
| 77 | } | ||
| 78 | |||
| 61 | $res = NPTest->testCmd( "./check_smtp $host_nonresponsive" ); | 79 | $res = NPTest->testCmd( "./check_smtp $host_nonresponsive" ); |
| 62 | is ($res->return_code, 2, "CRITICAL - host non responding" ); | 80 | is ($res->return_code, 2, "CRITICAL - host non responding" ); |
| 63 | 81 | ||
