summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins-root/t/check_dhcp.t15
1 files changed, 10 insertions, 5 deletions
diff --git a/plugins-root/t/check_dhcp.t b/plugins-root/t/check_dhcp.t
index a7ce1e2..555523a 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) {
19my $sudo = $> == 0 ? '' : 'sudo'; 19my $sudo = $> == 0 ? '' : 'sudo';
20 20
21my $successOutput = '/OK: Received \d+ DHCPOFFER\(s\), \d+ of 1 requested servers responded, max lease time = \d+ sec\./'; 21my $successOutput = '/OK: Received \d+ DHCPOFFER\(s\), \d+ of 1 requested servers responded, max lease time = \d+ sec\./';
22my $failureOutput = '/CRITICAL: Received \d+ DHCPOFFER\(s\), 0 of \d+ requested servers responded/'; 22my $failureOutput = '/CRITICAL: No DHCPOFFERs were received/';
23my $invalidOutput = '/Invalid hostname/'; 23my $invalidOutput = '/Invalid hostname/';
24 24
25my $host_responsive = getTestParameter( "NP_HOST_DHCP_RESPONSIVE", 25my $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
37my $res; 37# try to determince interface
38my $interface = '';
39if(`ifconfig -a 2>/dev/null` =~ m/^(e(m|th)\d+)/mx and $1 ne 'eth0') {
40 $interface = ' -i '.$1;
41}
38 42
43my $res;
39SKIP: { 44SKIP: {
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: {
48SKIP: { 53SKIP: {
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: {
57SKIP: { 62SKIP: {
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" );