[Python-modules-commits] [python-protobix] 01/03: Import python-protobix_0.1.2.orig.tar.gz

Jean Baptiste Favre jbfavre-guest at moszumanska.debian.org
Sun Jul 17 07:48:39 UTC 2016


This is an automated email from the git hooks/post-receive script.

jbfavre-guest pushed a commit to branch master
in repository python-protobix.

commit 70dbb025bb47a793fb2f6430c20f76588dc966b7
Author: Jean Baptiste Favre <debian at jbfavre.org>
Date:   Fri Jul 15 15:39:07 2016 +0200

    Import python-protobix_0.1.2.orig.tar.gz
---
 protobix/datacontainer.py      |  11 +++--
 setup.py                       |   4 +-
 tests/test_04ReadZabbixFile.py | 100 +++++++++++++++++++++++++++++++++++++++++
 tests/zabbix_agentd.conf       |   8 ++--
 4 files changed, 114 insertions(+), 9 deletions(-)

diff --git a/protobix/datacontainer.py b/protobix/datacontainer.py
index 24c645b..cd541b6 100644
--- a/protobix/datacontainer.py
+++ b/protobix/datacontainer.py
@@ -150,14 +150,19 @@ class DataContainer(SenderProtocol):
         #               3 -> logging.WARNING
         #               4 -> logging.DEBUG
         # - Timeout (default: 3, Allowed: 1-30)
+
+        # list_values=False argument bellow is needed because of UserParameter with spaces
         tmp_config = configobj.ConfigObj(config_file, list_values=False)
 
         if 'ServerActive' in tmp_config:
-            tmp_server = tmp_config['ServerActive'][0] \
-                         if isinstance(tmp_config['ServerActive'], list) \
-                         else list(tmp_config['ServerActive'])[0]
+            # Because of list_values=False above,
+            # we have to check ServerActive and make the split manually
+            tmp_server = tmp_config['ServerActive'].split(',')[0] \
+                         if "," in tmp_config['ServerActive'] \
+                         else tmp_config['ServerActive']
             self._config['server'], self._config['port'] = tmp_server.split(':') \
                          if ":" in tmp_server else (tmp_server, 10051)
+            self._config['port'] = int(self._config['port'])
 
         if 'LogFile' in tmp_config:
             self._config['log_output'] = tmp_config['LogFile']
diff --git a/setup.py b/setup.py
index 36ee764..f3b673f 100755
--- a/setup.py
+++ b/setup.py
@@ -23,7 +23,7 @@ class PyTest(TestCommand):
 setup(
     name = 'protobix',
     packages = ['protobix'],
-    version = '0.1.1',
+    version = '0.1.2',
     install_requires = [
         'configobj',
         'simplejson',
@@ -40,7 +40,7 @@ setup(
     author_email = 'jean-baptiste.favre at blablacar.com',
     license = 'GPL-3+',
     url='https://github.com/jbfavre/python-protobix/',
-    download_url = 'https://github.com/jbfavre/python-protobix/archive/0.1.1.tar.gz',
+    download_url = 'https://github.com/jbfavre/python-protobix/archive/0.1.2.tar.gz',
     keywords = ['monitoring','zabbix','trappers'],
     classifiers = [],
     cmdclass={'test': PyTest}
diff --git a/tests/test_04ReadZabbixFile.py b/tests/test_04ReadZabbixFile.py
new file mode 100644
index 0000000..abf3963
--- /dev/null
+++ b/tests/test_04ReadZabbixFile.py
@@ -0,0 +1,100 @@
+import pytest, coverage
+import unittest
+import sys, os
+sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
+import protobix
+import logging
+
+class TestZabbixFile(object):
+
+#   @classmethod
+#   def setup_class(cls):
+#       common_log_format = '[%(name)s:%(levelname)s] %(message)s'
+#       cls.logger = logging.getLogger(cls.__class__.__name__)
+#       consoleHandler = logging.StreamHandler()
+#       consoleFormatter = logging.Formatter(
+#           fmt = common_log_format,
+#           datefmt = '%Y%m%d:%H%M%S'
+#       )
+#       consoleHandler.setFormatter(consoleFormatter)
+#       cls.logger.addHandler(consoleHandler)
+
+#       cls.zbx_container = protobix.DataContainer(logger=cls.logger)
+#       cls.zbx_container._items_list = []
+#       cls.zbx_container._config = {
+#           'server': '127.0.0.1',
+#           'port': 10051,
+#           'log_level': 3,
+#           'log_output': '/tmp/zabbix_agentd.log',
+#           'dryrun': False,
+#           'data_type': None,
+#           'timeout': 3
+#       }
+
+#   @classmethod
+#   def teardown_class(cls):
+#       cls.zbx_container._items_list = []
+#       cls.zbx_container._config = {
+#           'server': '127.0.0.1',
+#           'port': 10051,
+#           'log_level': 3,
+#           'log_output': '/tmp/zabbix_agentd.log',
+#           'dryrun': False,
+#           'data_type': None,
+#           'timeout': 3
+#       }
+#       cls.zbx_container = None
+#       cls.logger = None
+
+#   def setup_method(self, method):
+#       self.zbx_container._items_list = []
+#       self.zbx_container._config = {
+#           'server': '127.0.0.1',
+#           'port': 10051,
+#           'log_level': 3,
+#           'log_output': '/tmp/zabbix_agentd.log',
+#           'dryrun': False,
+#           'data_type': None,
+#           'timeout': 3
+#       }
+
+#   def teardown_method(self, method):
+#       self.zbx_container._items_list = []
+#       self.zbx_container._config = {
+#           'server': '127.0.0.1',
+#           'port': 10051,
+#           'log_level': 3,
+#           'log_output': '/tmp/zabbix_agentd.log',
+#           'dryrun': False,
+#           'data_type': None,
+#           'timeout': 3
+#       }
+
+    def test_default_params(self):
+        self.zbx_container = protobix.DataContainer(
+                        data_type  = 'items',
+        )
+        assert self.zbx_container._config == {
+            'server': '127.0.0.1',
+            'port': 10051,
+            'log_level': 3,
+            'log_output': '/tmp/zabbix_agentd.log',
+            'dryrun': False,
+            'data_type': 'items',
+            'timeout': 3
+        }
+
+    def test_custom_params(self):
+        self.zbx_container = protobix.DataContainer(
+                        data_type  = 'items',
+                        zbx_file   = './tests/zabbix_agentd.conf',
+        )
+        assert self.zbx_container._config == {
+            'server': '127.0.1.1',
+            'port': 10061,
+            'log_level': 3,
+            'log_output': '/tmp/test_zabbix_agentd.log',
+            'dryrun': False,
+            'data_type': 'items',
+            'timeout': 3
+        }
diff --git a/tests/zabbix_agentd.conf b/tests/zabbix_agentd.conf
index 5b82bed..bbd4731 100644
--- a/tests/zabbix_agentd.conf
+++ b/tests/zabbix_agentd.conf
@@ -18,7 +18,7 @@
 # Default:
 # LogFile=
 
-LogFile=/tmp/zabbix_agentd.log
+LogFile=/tmp/test_zabbix_agentd.log
 
 ### Option: LogFileSize
 #	Maximum size of log file in MB.
@@ -80,7 +80,7 @@ DebugLevel=3
 # Default:
 # Server=
 
-Server=127.0.0.1
+Server=127.0.1.1
 
 ### Option: ListenPort
 #	Agent will listen on this port for connections from the server.
@@ -88,7 +88,7 @@ Server=127.0.0.1
 # Mandatory: no
 # Range: 1024-32767
 # Default:
-# ListenPort=10050
+ListenPort=10060
 
 ### Option: ListenIP
 #	List of comma delimited IP addresses that the agent should listen on.
@@ -121,7 +121,7 @@ Server=127.0.0.1
 # Default:
 # ServerActive=
 
-ServerActive=127.0.0.1:10051,10.0.0.1:10051
+ServerActive=127.0.1.1:10061,10.0.0.1:10051
 
 ### Option: Hostname
 #	Unique, case sensitive hostname.

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-protobix.git



More information about the Python-modules-commits mailing list