diff options
| author | Sven Nierlein <sven@nierlein.de> | 2016-11-11 10:32:19 +0100 |
|---|---|---|
| committer | Sven Nierlein <sven@nierlein.de> | 2016-11-11 10:32:19 +0100 |
| commit | 9e02d0c3e6cc4c2cf08140dcff50fb280315bfc8 (patch) | |
| tree | 4a92931af41c3b38e037c6d023dd379041465411 /plugins/t | |
| parent | e11823090308cb278fd0a32f3d07a8ee20e5ec2c (diff) | |
| download | monitoring-plugins-9e02d0c3e6cc4c2cf08140dcff50fb280315bfc8.tar.gz | |
check_http: add host header tests
Signed-off-by: Sven Nierlein <sven@nierlein.de>
Diffstat (limited to 'plugins/t')
| -rw-r--r-- | plugins/t/check_http.t | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/plugins/t/check_http.t b/plugins/t/check_http.t index f514ca6f..5a90f02a 100644 --- a/plugins/t/check_http.t +++ b/plugins/t/check_http.t | |||
| @@ -9,7 +9,7 @@ use Test::More; | |||
| 9 | use POSIX qw/mktime strftime/; | 9 | use POSIX qw/mktime strftime/; |
| 10 | use NPTest; | 10 | use NPTest; |
| 11 | 11 | ||
| 12 | plan tests => 42; | 12 | plan tests => 49; |
| 13 | 13 | ||
| 14 | my $successOutput = '/OK.*HTTP.*second/'; | 14 | my $successOutput = '/OK.*HTTP.*second/'; |
| 15 | 15 | ||
| @@ -64,6 +64,32 @@ cmp_ok( $res->return_code, '==', 2, "Webserver $hostname_invalid not valid" ); | |||
| 64 | # Is also possible to get a socket timeout if DNS is not responding fast enough | 64 | # Is also possible to get a socket timeout if DNS is not responding fast enough |
| 65 | like( $res->output, "/Unable to open TCP socket|Socket timeout after/", "Output OK"); | 65 | like( $res->output, "/Unable to open TCP socket|Socket timeout after/", "Output OK"); |
| 66 | 66 | ||
| 67 | # host header checks | ||
| 68 | $res = NPTest->testCmd("./check_http -v -H $host_tcp_http"); | ||
| 69 | like( $res->output, '/^Host: '.$host_tcp_http.'\s*$/ms', "Host Header OK" ); | ||
| 70 | |||
| 71 | $res = NPTest->testCmd("./check_http -v -H $host_tcp_http -p 80"); | ||
| 72 | like( $res->output, '/^Host: '.$host_tcp_http.'\s*$/ms', "Host Header OK" ); | ||
| 73 | |||
| 74 | $res = NPTest->testCmd("./check_http -v -H $host_tcp_http:8080 -p 80"); | ||
| 75 | like( $res->output, '/^Host: '.$host_tcp_http.':8080\s*$/ms', "Host Header OK" ); | ||
| 76 | |||
| 77 | $res = NPTest->testCmd("./check_http -v -H $host_tcp_http:8080 -p 80"); | ||
| 78 | like( $res->output, '/^Host: '.$host_tcp_http.':8080\s*$/ms', "Host Header OK" ); | ||
| 79 | |||
| 80 | SKIP: { | ||
| 81 | skip "No internet access", 3 if $internet_access eq "no"; | ||
| 82 | |||
| 83 | $res = NPTest->testCmd("./check_http -v -H www.verisign.com -S"); | ||
| 84 | like( $res->output, '/^Host: www.verisign.com\s*$/ms', "Host Header OK" ); | ||
| 85 | |||
| 86 | $res = NPTest->testCmd("./check_http -v -H www.verisign.com:8080 -S -p 443"); | ||
| 87 | like( $res->output, '/^Host: www.verisign.com:8080\s*$/ms', "Host Header OK" ); | ||
| 88 | |||
| 89 | $res = NPTest->testCmd("./check_http -v -H www.verisign.com:443 -S -p 443"); | ||
| 90 | like( $res->output, '/^Host: www.verisign.com\s*$/ms', "Host Header OK" ); | ||
| 91 | }; | ||
| 92 | |||
| 67 | SKIP: { | 93 | SKIP: { |
| 68 | skip "No host serving monitoring in index file", 7 unless $host_tcp_http2; | 94 | skip "No host serving monitoring in index file", 7 unless $host_tcp_http2; |
| 69 | 95 | ||
