瀏覽代碼

added tests for check_hpjd port options

abrist 12 年之前
父節點
當前提交
b5d0bacb6b
共有 1 個文件被更改,包括 28 次插入7 次删除
  1. 28 7
      plugins/t/check_hpjd.t

+ 28 - 7
plugins/t/check_hpjd.t

@@ -10,7 +10,6 @@ use NPTest;
 
 plan skip_all => "check_hpjd not compiled" unless (-x "check_hpjd");
 
-plan tests => 5;
 
 my $successOutput = '/^Printer ok - /';
 my $failureOutput = '/Timeout: No [Rr]esponse from /';
@@ -20,31 +19,53 @@ my $host_tcp_hpjd = getTestParameter(
 			"A host (usually a printer) providing the HP-JetDirect Services"
 			);
 
+my $host_hpjd_port_invalid = getTestParameter( 
+			"NP_HOST_HPJD_PORT_INVALID",
+			"A port that HP-JetDirect Services is not listening on",
+			"162"
+			);
+
+my $host_hpjd_port_valid = getTestParameter( 
+			"NP_HOST_HPJD_PORT_VALID",
+			"The port that HP-JetDirect Services is currently listening on",
+			"161"
+			);
+
 my $host_nonresponsive = getTestParameter( 
 			"NP_HOST_NONRESPONSIVE",
 			"The hostname of system not responsive to network requests",
-			"10.0.0.1",
+			"10.0.0.1"
 			);
 
 my $hostname_invalid = getTestParameter( 
 			"NP_HOSTNAME_INVALID",
 			"An invalid (not known to DNS) hostname",
-			"nosuchhost",
+			"nosuchhost"
 			);
 
+my $tests = $host_tcp_hpjd ? 9 : 5;
+plan tests => $tests;
 my $res;
 
 SKIP: {
 	skip "No HP JetDirect defined", 2 unless $host_tcp_hpjd;
-	$res = NPTest->testCmd("./check_hpjd $host_tcp_hpjd");
-	cmp_ok( $res->return_code, '==', 0, "Jetdirect responding" );
+	$res = NPTest->testCmd("./check_hpjd -H $host_tcp_hpjd");
+	cmp_ok( $res->return_code, 'eq', 0, "Jetdirect responding" );
 	like  ( $res->output, $successOutput, "Output correct" );
+
+	$res = NPTest->testCmd("./check_hpjd -H $host_tcp_hpjd -p $host_hpjd_port_valid");
+	cmp_ok( $res->return_code, 'eq', 0, "Jetdirect responding on port $host_hpjd_port_valid" );
+	like  ( $res->output, $successOutput, "Output correct" );
+
+	$res = NPTest->testCmd("./check_hpjd -H $host_tcp_hpjd -p $host_hpjd_port_invalid");
+	cmp_ok( $res->return_code, 'eq', 2, "Jetdirect not responding on port $host_hpjd_port_invalid" );
+	like  ( $res->output, $failureOutput, "Output correct" );
 }
 
-$res = NPTest->testCmd("./check_hpjd $host_nonresponsive");
+$res = NPTest->testCmd("./check_hpjd -H $host_nonresponsive");
 cmp_ok( $res->return_code, 'eq', 2, "Host not responding");
 like  ( $res->output, $failureOutput, "Output OK" );
 
-$res = NPTest->testCmd("./check_hpjd $hostname_invalid");
+$res = NPTest->testCmd("./check_hpjd -H $hostname_invalid");
 cmp_ok( $res->return_code, 'eq', 3, "Hostname invalid");