From 95dba9c4213c2e7e8f4b572efd873c1979406221 Mon Sep 17 00:00:00 2001 From: Ton Voon Date: Fri, 31 Aug 2007 13:21:10 +0000 Subject: Fixed bug where warn or crit = 0 will raise an error. Optional flag to tell nagios_die to use die instead of exit so trappable by eval git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/Nagios-Plugin/trunk@1772 f882894a-f735-0410-b71e-b25c423dba1c --- t/Nagios-Plugin-Functions-01.t | 7 ++++++- t/Nagios-Plugin-Performance.t | 14 +++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) (limited to 't') diff --git a/t/Nagios-Plugin-Functions-01.t b/t/Nagios-Plugin-Functions-01.t index 70db221..5268255 100644 --- a/t/Nagios-Plugin-Functions-01.t +++ b/t/Nagios-Plugin-Functions-01.t @@ -1,6 +1,6 @@ use strict; -use Test::More tests => 112; +use Test::More tests => 113; BEGIN { use_ok("Nagios::Plugin::Functions", ":all"); } Nagios::Plugin::Functions::_fake_exit(1); @@ -154,3 +154,8 @@ for (@ok) { $_->[1] . '.*' . $_->[2])); } +# Check that _use_die set to 1 will catch exceptions correctly +Nagios::Plugin::Functions::_fake_exit(0); +Nagios::Plugin::Functions::_use_die(1); +eval { nagios_die("Using die") }; +is( $@, "NAGIOS-PLUGIN-FUNCTIONS-01 UNKNOWN - Using die\n", "Caught exception"); diff --git a/t/Nagios-Plugin-Performance.t b/t/Nagios-Plugin-Performance.t index 0dcb800..c4d518c 100644 --- a/t/Nagios-Plugin-Performance.t +++ b/t/Nagios-Plugin-Performance.t @@ -1,6 +1,6 @@ use strict; -use Test::More tests => 77; +use Test::More tests => 84; BEGIN { use_ok('Nagios::Plugin::Performance') }; diag "\nusing Nagios::Plugin::Performance revision ". $Nagios::Plugin::Performance::VERSION . "\n" if $ENV{TEST_VERBOSE}; @@ -120,5 +120,17 @@ cmp_ok( $p[0]->rrdlabel, "eq", "home_a_m", "changing / to _"); cmp_ok( $p[1]->rrdlabel, "eq", "shared_folder_big", "replacing bad characters"); cmp_ok( $p[2]->rrdlabel, "eq", "1234567890123456789", "shortening rrd label"); +# turn off fake_exit and enable use_die so we pick up on errors via nagios_die +Nagios::Plugin::Functions::_use_die(1); +Nagios::Plugin::Functions::_fake_exit(0); + +@p = Nagios::Plugin::Performance->parse_perfstring("time=0.002722s;0.000000;0.000000;0.000000;10.000000"); +cmp_ok( $p[0]->label, "eq", "time", "label okay"); +cmp_ok( $p[0]->value, "eq", "0.002722", "value okay"); +cmp_ok( $p[0]->uom, "eq", "s", "uom okay"); + ok( defined $p[0]->threshold->warning->is_set, "Warning range has been set"); + ok( defined $p[0]->threshold->critical->is_set, "Critical range has been set"); +cmp_ok( $p[0]->threshold->warning, 'eq', "0", "warn okay"); +cmp_ok( $p[0]->threshold->critical, 'eq', "0", "crit okay"); # add_perfdata tests in t/Nagios-Plugin-01.t -- cgit v1.2.3-74-g34f1