diff options
| author | Sven Nierlein <Sven.Nierlein@consol.de> | 2013-09-16 12:36:38 +0200 |
|---|---|---|
| committer | Sven Nierlein <sven@consol.de> | 2013-09-16 13:49:44 +0200 |
| commit | 2b23caf3d107acc71c03373e815e2d3f3103fe18 (patch) | |
| tree | d67dea4a9643f77c2799000145814a047b10d11d | |
| parent | 0b656ecd2f6539b0b43b945128e20d5c98ebbf6c (diff) | |
| download | monitoring-plugins-2b23caf3d107acc71c03373e815e2d3f3103fe18.tar.gz | |
check_dhcp: fix tests for machines with default interace != eth0
| -rw-r--r-- | plugins-root/t/check_dhcp.t | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/plugins-root/t/check_dhcp.t b/plugins-root/t/check_dhcp.t index a7ce1e20..555523a3 100644 --- a/plugins-root/t/check_dhcp.t +++ b/plugins-root/t/check_dhcp.t | |||
| @@ -19,7 +19,7 @@ if ($allow_sudo eq "yes" or $> == 0) { | |||
| 19 | my $sudo = $> == 0 ? '' : 'sudo'; | 19 | my $sudo = $> == 0 ? '' : 'sudo'; |
| 20 | 20 | ||
| 21 | my $successOutput = '/OK: Received \d+ DHCPOFFER\(s\), \d+ of 1 requested servers responded, max lease time = \d+ sec\./'; | 21 | my $successOutput = '/OK: Received \d+ DHCPOFFER\(s\), \d+ of 1 requested servers responded, max lease time = \d+ sec\./'; |
| 22 | my $failureOutput = '/CRITICAL: Received \d+ DHCPOFFER\(s\), 0 of \d+ requested servers responded/'; | 22 | my $failureOutput = '/CRITICAL: No DHCPOFFERs were received/'; |
| 23 | my $invalidOutput = '/Invalid hostname/'; | 23 | my $invalidOutput = '/Invalid hostname/'; |
| 24 | 24 | ||
| 25 | my $host_responsive = getTestParameter( "NP_HOST_DHCP_RESPONSIVE", | 25 | my $host_responsive = getTestParameter( "NP_HOST_DHCP_RESPONSIVE", |
| @@ -34,12 +34,17 @@ my $hostname_invalid = getTestParameter( "NP_HOSTNAME_INVALID", | |||
| 34 | "An invalid (not known to DNS) hostname", | 34 | "An invalid (not known to DNS) hostname", |
| 35 | "nosuchhost" ); | 35 | "nosuchhost" ); |
| 36 | 36 | ||
| 37 | my $res; | 37 | # try to determince interface |
| 38 | my $interface = ''; | ||
| 39 | if(`ifconfig -a 2>/dev/null` =~ m/^(e(m|th)\d+)/mx and $1 ne 'eth0') { | ||
| 40 | $interface = ' -i '.$1; | ||
| 41 | } | ||
| 38 | 42 | ||
| 43 | my $res; | ||
| 39 | SKIP: { | 44 | SKIP: { |
| 40 | skip('need responsive test host', 2) unless $host_responsive; | 45 | skip('need responsive test host', 2) unless $host_responsive; |
| 41 | $res = NPTest->testCmd( | 46 | $res = NPTest->testCmd( |
| 42 | "$sudo ./check_dhcp -s $host_responsive" | 47 | "$sudo ./check_dhcp $interface -u -s $host_responsive" |
| 43 | ); | 48 | ); |
| 44 | is( $res->return_code, 0, "Syntax ok" ); | 49 | is( $res->return_code, 0, "Syntax ok" ); |
| 45 | like( $res->output, $successOutput, "Output OK" ); | 50 | like( $res->output, $successOutput, "Output OK" ); |
| @@ -48,7 +53,7 @@ SKIP: { | |||
| 48 | SKIP: { | 53 | SKIP: { |
| 49 | skip('need nonresponsive test host', 2) unless $host_nonresponsive; | 54 | skip('need nonresponsive test host', 2) unless $host_nonresponsive; |
| 50 | $res = NPTest->testCmd( | 55 | $res = NPTest->testCmd( |
| 51 | "$sudo ./check_dhcp -s $host_nonresponsive" | 56 | "$sudo ./check_dhcp $interface -u -s $host_nonresponsive" |
| 52 | ); | 57 | ); |
| 53 | is( $res->return_code, 2, "Exit code - host nonresponsive" ); | 58 | is( $res->return_code, 2, "Exit code - host nonresponsive" ); |
| 54 | like( $res->output, $failureOutput, "Output OK" ); | 59 | like( $res->output, $failureOutput, "Output OK" ); |
| @@ -57,7 +62,7 @@ SKIP: { | |||
| 57 | SKIP: { | 62 | SKIP: { |
| 58 | skip('need invalid test host', 2) unless $hostname_invalid; | 63 | skip('need invalid test host', 2) unless $hostname_invalid; |
| 59 | $res = NPTest->testCmd( | 64 | $res = NPTest->testCmd( |
| 60 | "$sudo ./check_dhcp -s $hostname_invalid" | 65 | "$sudo ./check_dhcp $interface -u -s $hostname_invalid" |
| 61 | ); | 66 | ); |
| 62 | is( $res->return_code, 3, "Exit code - host invalid" ); | 67 | is( $res->return_code, 3, "Exit code - host invalid" ); |
| 63 | like( $res->output, $invalidOutput, "Output OK" ); | 68 | like( $res->output, $invalidOutput, "Output OK" ); |
