check_dummy.t 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #! /usr/bin/perl -w -I ..
  2. #
  3. # check_dummy tests
  4. #
  5. # $Id$
  6. #
  7. use strict;
  8. use Test::More;
  9. use NPTest;
  10. plan tests => 20;
  11. my $res;
  12. $res = NPTest->testCmd("./check_dummy");
  13. is( $res->return_code, 3, "No args" );
  14. like( $res->output, "/Could not parse arguments/", "Correct usage message");
  15. $res = NPTest->testCmd("./check_dummy 0");
  16. is( $res->return_code, 0, "OK state returned");
  17. is( $res->output, "OK", "Says 'OK'");
  18. $res = NPTest->testCmd("./check_dummy 0 'some random data'");
  19. is( $res->return_code, 0, "Still OK");
  20. is( $res->output, "OK: some random data", "Sample text okay");
  21. $res = NPTest->testCmd("./check_dummy 1");
  22. is( $res->return_code, 1, "Warning okay");
  23. is( $res->output, "WARNING", "Says 'WARNING'");
  24. $res = NPTest->testCmd("./check_dummy 1 'more stuff'");
  25. is( $res->return_code, 1, "Still warning");
  26. is( $res->output, "WARNING: more stuff", "optional text okay" );
  27. $res = NPTest->testCmd("./check_dummy 2");
  28. is( $res->return_code, 2, "Critical ok" );
  29. is( $res->output, "CRITICAL", "Says 'CRITICAL'");
  30. $res = NPTest->testCmd("./check_dummy 2 'roughly drafted'");
  31. is( $res->return_code, 2, "Still critical");
  32. is( $res->output, "CRITICAL: roughly drafted", "optional text okay" );
  33. $res = NPTest->testCmd("./check_dummy 3");
  34. is( $res->return_code, 3, "Unknown ok" );
  35. is( $res->output, "UNKNOWN", "Says 'UNKNOWN'");
  36. $res = NPTest->testCmd("./check_dummy 3 'daringfireball'");
  37. is( $res->return_code, 3, "Still unknown");
  38. is( $res->output, "UNKNOWN: daringfireball", "optional text okay" );
  39. $res = NPTest->testCmd("./check_dummy 4");
  40. is( $res->return_code, 3, "Invalid error code" );
  41. is( $res->output, "UNKNOWN: Status 4 is not a supported error state", "With appropriate error message");