diff options
| -rw-r--r-- | lib/Monitoring/Plugin/Functions.pm | 2 | ||||
| -rw-r--r-- | t/Monitoring-Plugin-Functions-01.t | 15 |
2 files changed, 15 insertions, 2 deletions
diff --git a/lib/Monitoring/Plugin/Functions.pm b/lib/Monitoring/Plugin/Functions.pm index a19db49..5946c7d 100644 --- a/lib/Monitoring/Plugin/Functions.pm +++ b/lib/Monitoring/Plugin/Functions.pm | |||
| @@ -119,7 +119,7 @@ sub plugin_exit { | |||
| 119 | # Setup output | 119 | # Setup output |
| 120 | my $output = "$STATUS_TEXT{$code}"; | 120 | my $output = "$STATUS_TEXT{$code}"; |
| 121 | if (defined $message && $message ne '') { | 121 | if (defined $message && $message ne '') { |
| 122 | $output .= " - " unless $message =~ /^[ \f\r\t\w]*\n/; | 122 | $output .= " - " unless $message =~ /^\h*\R/; |
| 123 | $output .= $message; | 123 | $output .= $message; |
| 124 | } | 124 | } |
| 125 | my $shortname = ($arg->{plugin} ? $arg->{plugin}->shortname : undef); | 125 | my $shortname = ($arg->{plugin} ? $arg->{plugin}->shortname : undef); |
diff --git a/t/Monitoring-Plugin-Functions-01.t b/t/Monitoring-Plugin-Functions-01.t index 084ad28..3f1ab75 100644 --- a/t/Monitoring-Plugin-Functions-01.t +++ b/t/Monitoring-Plugin-Functions-01.t | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | 1 | ||
| 2 | use strict; | 2 | use strict; |
| 3 | use Test::More tests => 113; | 3 | use Test::More tests => 116; |
| 4 | 4 | ||
| 5 | BEGIN { use_ok("Monitoring::Plugin::Functions", ":all"); } | 5 | BEGIN { use_ok("Monitoring::Plugin::Functions", ":all"); } |
| 6 | Monitoring::Plugin::Functions::_fake_exit(1); | 6 | Monitoring::Plugin::Functions::_fake_exit(1); |
| @@ -88,6 +88,19 @@ for (@ugly2) { | |||
| 88 | $display1, "CRITICAL.*$display2")); | 88 | $display1, "CRITICAL.*$display2")); |
| 89 | } | 89 | } |
| 90 | 90 | ||
| 91 | # plugin_exit message with longoutput | ||
| 92 | my @ugly3 = ( | ||
| 93 | [ "MSG\nLONGOUTPUT", " - MSG\nLONGOUTPUT" ], | ||
| 94 | [ "\nLONGOUTPUT", "\nLONGOUTPUT" ], | ||
| 95 | [ " \nLONGOUTPUT", " \nLONGOUTPUT" ], | ||
| 96 | ); | ||
| 97 | for (@ugly3) { | ||
| 98 | $r = plugin_exit(CRITICAL, $_->[0]); | ||
| 99 | like($r->message, qr/CRITICAL$_->[1]$/, | ||
| 100 | sprintf('plugin_exit(CRITICAL, $msg) output matched "%s"', | ||
| 101 | "CRITICAL$_->[1]")); | ||
| 102 | } | ||
| 103 | |||
| 91 | # Test plugin_die( $msg ) | 104 | # Test plugin_die( $msg ) |
| 92 | my @msg = ( | 105 | my @msg = ( |
| 93 | [ 'die you dog' ], | 106 | [ 'die you dog' ], |
