summaryrefslogtreecommitdiffstats
path: root/lib/tests/test_opts3.t
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tests/test_opts3.t')
-rwxr-xr-xlib/tests/test_opts3.t31
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/tests/test_opts3.t b/lib/tests/test_opts3.t
new file mode 100755
index 0000000..47ec26b
--- /dev/null
+++ b/lib/tests/test_opts3.t
@@ -0,0 +1,31 @@
1#!/usr/bin/perl
2use Test::More;
3use strict;
4use warnings;
5
6if (! -e "./test_opts3") {
7 plan skip_all => "./test_opts3 not compiled - please install tap library and/or enable parse-ini to test";
8}
9
10# array of argument arrays
11# - first value is the NAGIOS_CONFIG_PATH
12# - 2nd value is the plugin name
13# - 3rc and up are arguments
14my @TESTS = (
15 ['/nonexistent', 'prog_name', 'arg1', '--extra-opts', '--arg3', 'val2'],
16 ['.', 'prog_name', 'arg1', '--extra-opts=missing@./config-opts.ini', '--arg3', 'val2'],
17 ['.', 'prog_name', 'arg1', '--extra-opts', 'missing@./config-opts.ini', '--arg3', 'val2'],
18 ['.', 'check_missing', 'arg1', '--extra-opts=@./config-opts.ini', '--arg3', 'val2'],
19 ['.', 'check_missing', 'arg1', '--extra-opts', '--arg3', 'val2'],
20);
21
22plan tests => scalar(@TESTS);
23
24my $count=1;
25
26foreach my $args (@TESTS) {
27 $ENV{"NAGIOS_CONFIG_PATH"} = shift(@$args);
28 system {'./test_opts3'} @$args;
29 cmp_ok($?>>8, '==', 3, "Extra-opts die " . $count++);
30}
31