def setUp(self, zabbix_mock, mongo_mock):
        os.environ["ZABBIX_URL"] = self.url = "http://zbx.com"
        os.environ["ZABBIX_USER"] = self.user = "******"
        os.environ["ZABBIX_PASSWORD"] = self.password = "******"
        os.environ["ZABBIX_HOST"] = "1"
        os.environ["ZABBIX_HOST_GROUP"] = "2"
        zapi_mock = mock.Mock()
        zapi_mock.trigger.get.return_value = {
            "result": [{
                "comments": "teste"
            }]
        }
        zabbix_mock.return_value = zapi_mock

        instance_mock = mock.Mock()
        mongo_mock.return_value = instance_mock

        from healthcheck.backends import Zabbix
        self.backend = Zabbix()
        zabbix_mock.assert_called_with(self.url)
        zapi_mock.login.assert_called_with(self.user, self.password)

        mongo_mock.assert_called_with()
        instance_mock.conn.assert_called_with()
        self.backend.storage = mock.Mock()
示例#2
0
def get_manager():
    from healthcheck.backends import Zabbix
    managers = {
        "zabbix": Zabbix(),
    }
    manager = os.environ.get("API_MANAGER", "zabbix")
    manager_class = managers.get(manager)
    if manager_class:
        return manager_class
    raise ValueError("{0} is not a valid manager".format(manager))
 def test_add_url(self):
     backend = Zabbix()
     url = "http://mysite.com"
     backend.add_url(url)