summaryrefslogtreecommitdiff
path: root/test/nagios/support/nagios_report.py
diff options
context:
space:
mode:
authorAzul <azul@leap.se>2014-04-16 10:13:28 +0200
committerAzul <azul@leap.se>2014-04-17 10:39:59 +0200
commit73bdb9a9ea8932e9a14f996391d348690da1a63c (patch)
treec257dca7f24e2b16f976d82e9d232605954ea4fe /test/nagios/support/nagios_report.py
parentbe2971c2e615cc8a808822317d049e99f5183bdc (diff)
nagios test: refactor webapp_login with classes
Diffstat (limited to 'test/nagios/support/nagios_report.py')
-rw-r--r--test/nagios/support/nagios_report.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/nagios/support/nagios_report.py b/test/nagios/support/nagios_report.py
new file mode 100644
index 0000000..13cd551
--- /dev/null
+++ b/test/nagios/support/nagios_report.py
@@ -0,0 +1,24 @@
+def functions_for_system(under_test):
+ """
+ returns a set of functions to use for nagios reporting:
+ >>> ok, warn, critical, unknown = functions_for_system("tested system")
+
+ each of them will print a nagios line with its argument and
+ return the exit code:
+ >>> warn("that looks strange")
+ 1 tested system - WARNING - that looks strange
+ 1
+ """
+ def report_function(code):
+ return lambda message : report(under_test, code, message)
+ return map(report_function, [0,1,2,3])
+
+def report(system, code, message):
+ codes = {0: 'OK', 1: 'WARNING', 2: 'CRITICAL', 3: 'UNKNOWN'}
+ print "%d %s - %s - %s" % \
+ (code, system, codes[code], message)
+ return code
+
+if __name__ == "__main__":
+ import doctest
+ doctest.testmod()