コード例 #1
0
ファイル: test.py プロジェクト: tjasond/nagios-regex-json
    def setUp(self):
        testfile = open("test/test_nagios.json", 'r').read()
        dictionary = json.loads(testfile)
        parsedProperties = dict()
        check_json.flattenJson(dictionary, "", -1, parsedProperties)

        self.rp = JsonRuleProcessor(parsedProperties, TestArgs())
コード例 #2
0
ファイル: test.py プロジェクト: tjasond/nagios-regex-json
class TestJsonRuleProcessor(unittest.TestCase):

    def setUp(self):
        testfile = open("test/test_nagios.json", 'r').read()
        dictionary = json.loads(testfile)
        parsedProperties = dict()
        check_json.flattenJson(dictionary, "", -1, parsedProperties)

        self.rp = JsonRuleProcessor(parsedProperties, TestArgs())

    def test_exists(self) :
        matches = self.rp.checkExists(["nonexistent.*"])
        self.assertTrue(len(matches) == 1)

        matches = self.rp.checkExists(["critical.*"])
        self.assertTrue(len(matches) == 0)

    def test_literal_value(self) :
        matches = self.rp.checkKeyValue(["critical.*\.status,OK,1"], self.rp.literalValueChecker)
        self.assertEquals(1, len(matches))

        matches = self.rp.checkKeyValue(["critical.*\.status,OK:ALARM,1"], self.rp.literalValueChecker)
        self.assertEquals(0, len(matches))

    def test_range_value(self) :
        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,16,1"], self.rp.valueRangeChecker)
        self.assertEquals(0, len(matches))

        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,10,1"], self.rp.valueRangeChecker)
        self.assertEquals(1, len(matches))

        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,16:,1"], self.rp.valueRangeChecker)
        self.assertEquals(1, len(matches))

        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,@10:20,1"], self.rp.valueRangeChecker)
        self.assertEquals(1, len(matches))

        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,16:20,1"], self.rp.valueRangeChecker)
        self.assertEquals(1, len(matches))

        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,~:10,1"], self.rp.valueRangeChecker)
        self.assertEquals(1, len(matches))

        matches = self.rp.checkKeyValue(["non_critical.*\.MetricOne,~:16,1"], self.rp.valueRangeChecker)
        self.assertEquals(0, len(matches))