def test_component_result(self): self.cmd.result.output = json.dumps({ 'values': { 'component1': { 'value1': 1.0, 'value2': 2.0, }, 'component2': { 'value1': 1.1, 'value2': 2.2, } } }) p1_1 = Object() p1_1.id = 'value1' p1_1.component = 'component1' p1_2 = Object() p1_2.id = 'value2' p1_2.component = 'component1' p2_1 = Object() p2_1.id = 'value1' p2_1.component = 'component2' p2_2 = Object() p2_2.id = 'value2' p2_2.component = 'component2' self.cmd.points = [p1_1, p1_2, p2_1, p2_2] self.parser.processResults(self.cmd, self.results) self.assertEquals(len(self.results.values), 4) value1_1 = self.results.values[0] self.assertEquals(value1_1[0].component, 'component1') self.assertEquals(value1_1[0].id, 'value1') self.assertEquals(value1_1[1], 1.0) value1_2 = self.results.values[1] self.assertEquals(value1_2[0].component, 'component1') self.assertEquals(value1_2[0].id, 'value2') self.assertEquals(value1_2[1], 2.0) value2_1 = self.results.values[2] self.assertEquals(value2_1[0].component, 'component2') self.assertEquals(value2_1[0].id, 'value1') self.assertEquals(value2_1[1], 1.1) value2_2 = self.results.values[3] self.assertEquals(value2_2[0].component, 'component2') self.assertEquals(value2_2[0].id, 'value2') self.assertEquals(value2_2[1], 2.2) self.assertEquals(len(self.results.events), 0)
def test_device_result(self): self.cmd.result.output = json.dumps({ 'values': { '': { 'value1': 1.0, 'value2': 2.0, }, }, 'events': [ { 'summary': 'test summary', 'severity': 2, }, { 'summary': 'another summary', 'severity': 3, }, ], }) p1 = Object() p1.id = 'value1' p1.component = '' p2 = Object() p2.id = 'value2' p2.component = '' self.cmd.points = [p1, p2] self.parser.processResults(self.cmd, self.results) self.assertEquals(len(self.results.values), 2) value1 = self.results.values[0] self.assertEquals(value1[0].component, '') self.assertEquals(value1[0].id, 'value1') self.assertEquals(value1[1], 1.0) value2 = self.results.values[1] self.assertEquals(value2[0].component, '') self.assertEquals(value2[0].id, 'value2') self.assertEquals(value2[1], 2.0) self.assertEquals(len(self.results.events), 2)
def testCacti(self): deviceConfig = Object() deviceConfig.device = 'localhost' cmd = Object() cmd.deviceConfig = deviceConfig p1 = Object() p1.id = 'cacti_single_result' p1.data = dict(processName='someJob a b c', ignoreParams=False, alertOnRestart=True, failSeverity=3) cmd.points = [p1] cmd.result = Object() cmd.result.output = "77" cmd.result.exitCode = 2 cmd.severity = 2 cmd.command = "testCactiPlugin" cmd.name = "testCactiPlugin" cmd.eventKey = "cactiKey" cmd.eventClass = "/Cmd" cmd.component = "zencommand" results = ParsedResults() self.parser.processResults(cmd, results) self.assertEquals( len(results.values), 1) self.assertEquals(77, int(results.values[0][1])) # Now test multiple data points p2 = Object() p2.id = 'cacti_multi_result' p2.data = dict(processName='someJob a b c', ignoreParams=False, alertOnRestart=True, failSeverity=3) cmd.points.append( p2 ) cmd.result.output = "cacti_single_result:77 cacti_multi_result: 4.03E02" results = ParsedResults() self.parser.processResults(cmd, results) self.assertEquals( len(results.values), 2) values = map(lambda x: x[1], results.values) self.assertTrue(77.0 in values) self.assertTrue(403.0 in values)
def testCacti(self): deviceConfig = Object() deviceConfig.device = 'localhost' cmd = Object() cmd.deviceConfig = deviceConfig p1 = Object() p1.id = 'cacti_single_result' p1.data = dict(processName='someJob a b c', ignoreParams=False, alertOnRestart=True, failSeverity=3) cmd.points = [p1] cmd.result = Object() cmd.result.output = "77" cmd.result.exitCode = 2 cmd.severity = 2 cmd.command = "testCactiPlugin" cmd.name = "testCactiPlugin" cmd.eventKey = "cactiKey" cmd.eventClass = "/Cmd" cmd.component = "zencommand" results = ParsedResults() self.parser.processResults(cmd, results) self.assertEquals(len(results.values), 1) self.assertEquals(77, int(results.values[0][1])) # Now test multiple data points p2 = Object() p2.id = 'cacti_multi_result' p2.data = dict(processName='someJob a b c', ignoreParams=False, alertOnRestart=True, failSeverity=3) cmd.points.append(p2) cmd.result.output = "cacti_single_result:77 cacti_multi_result: 4.03E02" results = ParsedResults() self.parser.processResults(cmd, results) self.assertEquals(len(results.values), 2) values = map(lambda x: x[1], results.values) self.assertTrue(77.0 in values) self.assertTrue(403.0 in values)