]> Frank Brehm's Git Trees - pixelpark/trace-maillog.git/commitdiff
Adding test/general.py
authorFrank Brehm <frank.brehm@pixelpark.com>
Wed, 10 May 2017 14:37:46 +0000 (16:37 +0200)
committerFrank Brehm <frank.brehm@pixelpark.com>
Wed, 10 May 2017 14:37:46 +0000 (16:37 +0200)
test/general.py [new file with mode: 0644]

diff --git a/test/general.py b/test/general.py
new file mode 100644 (file)
index 0000000..17c1b4c
--- /dev/null
@@ -0,0 +1,111 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+"""
+@author: Frank Brehm
+@contact: frank.brehm@pixlpark.com
+@license: GPL3
+@summary: general used functions an objects used for unit tests
+"""
+
+import os
+import sys
+import logging
+import argparse
+
+try:
+    import unittest2 as unittest
+except ImportError:
+    import unittest
+
+# Own modules
+
+from pb_logging.colored import ColoredFormatter
+
+# =============================================================================
+
+log = logging.getLogger(__name__)
+
+
+# =============================================================================
+def get_arg_verbose():
+
+    arg_parser = argparse.ArgumentParser()
+
+    arg_parser = argparse.ArgumentParser()
+    arg_parser.add_argument(
+        "-v", "--verbose", action="count",
+        dest='verbose', help='Increase the verbosity level')
+    args = arg_parser.parse_args()
+
+    return args.verbose
+
+
+# =============================================================================
+def init_root_logger(verbose=0):
+
+    root_log = logging.getLogger()
+    root_log.setLevel(logging.WARNING)
+    if verbose > 1:
+        root_log.setLevel(logging.DEBUG)
+    elif verbose:
+        root_log.setLevel(logging.INFO)
+
+    appname = os.path.basename(sys.argv[0])
+    format_str = appname + ': '
+    if verbose:
+        if verbose > 1:
+            format_str += '%(name)s(%(lineno)d) %(funcName)s() '
+        else:
+            format_str += '%(name)s '
+    format_str += '%(levelname)s - %(message)s'
+    formatter = None
+    formatter = ColoredFormatter(format_str)
+
+    # create log handler for console output
+    lh_console = logging.StreamHandler(sys.stderr)
+    if verbose:
+        lh_console.setLevel(logging.DEBUG)
+    else:
+        lh_console.setLevel(logging.INFO)
+    lh_console.setFormatter(formatter)
+
+    root_log.addHandler(lh_console)
+
+
+# =============================================================================
+class LogtraceTestcase(unittest.TestCase):
+
+    # -------------------------------------------------------------------------
+    def __init__(self, methodName='runTest', verbose=0):
+
+        self._verbose = int(verbose)
+
+        super(LogtraceTestcase, self).__init__(methodName)
+
+        self.test_dir = os.path.abspath(os.path.dirname(__file__))
+
+    # -------------------------------------------------------------------------
+    @property
+    def verbose(self):
+        """The verbosity level."""
+        return getattr(self, '_verbose', 0)
+
+    # -------------------------------------------------------------------------
+    def setUp(self):
+
+        pass
+
+    # -------------------------------------------------------------------------
+    def tearDown(self):
+
+        pass
+
+# =============================================================================
+
+if __name__ == '__main__':
+
+    pass
+
+# =============================================================================
+
+# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4