def test_mock(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) dda._setMock(mock_data=self.random_string) self.assertEqual(dda.mock, self.random_string)
def test_mock_perf_metric_monitor(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) # Perfomance in this mock is 7865.333333333333 dda._setMock(mock_data={'rc': 200, 'body': self.json_perf_metric_success}) dsa = DynatraceSyntheticAPI(datafeed_api=dda) # Case: OK perf = dsa.monitor_aggregated_performance(monid=123456, warn=8000, crit=9000) self.assertEqual(perf['result_string'], dsa.OK_STRING) self.assertEqual(perf['result_numeric'], dsa.OK_NUMERIC) # Case: WARN perf = dsa.monitor_aggregated_performance(monid=123456, warn=7000, crit=8000) self.assertEqual(perf['result_string'], dsa.WARNING_STRING) self.assertEqual(perf['result_numeric'], dsa.WARNING_NUMERIC) # Case: CRITICAL perf = dsa.monitor_aggregated_performance(monid=123456, warn=2000, crit=7000) self.assertEqual(perf['result_string'], dsa.CRITIAL_STRING) self.assertEqual(perf['result_numeric'], dsa.CRITICAL_NUMERIC)
def test_mock_perf_avail_monitor(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) # Availability in this mock is 0.91234578 dda._setMock(mock_data={'rc': 200, 'body': self.json_avail_metric_success}) dsa = DynatraceSyntheticAPI(datafeed_api=dda) # Case: OK avail = dsa.monitor_aggregated_availability(monid=123456, warn=0.9, crit=0.8) self.assertEqual(avail['result_string'], dsa.OK_STRING) self.assertEqual(avail['result_numeric'], dsa.OK_NUMERIC) # Case: WARN avail = dsa.monitor_aggregated_availability(monid=123456, warn=0.95, crit=0.90) self.assertEqual(avail['result_string'], dsa.WARNING_STRING) self.assertEqual(avail['result_numeric'], dsa.WARNING_NUMERIC) # Case: CRITICAL avail = dsa.monitor_aggregated_availability(monid=123456, warn=0.99, crit=0.98) self.assertEqual(avail['result_string'], dsa.CRITIAL_STRING) self.assertEqual(avail['result_numeric'], dsa.CRITICAL_NUMERIC)
def test_export_raw(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) dda._setMock(mock_data={'rc': 403, 'body': self.json_failed_unauthorized}) dsa = DynatraceSyntheticAPI(datafeed_api=dda) self.assertRaises(ValueError, dsa.export_raw, begin=1, end=2, slot=3, page=4)
def test_mock_avail_metric(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) dda._setMock(mock_data={'rc': 200, 'body': self.json_avail_metric_success}) dsa = DynatraceSyntheticAPI(datafeed_api=dda) avail = dsa.get_aggregated_availability(monid=12345) self.assertDictEqual(avail, self.avail_data_expect)
def test_mock_list_metric(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) dda._setMock(mock_data={'rc': 200, 'body': self.json_metrics_success}) dsa = DynatraceSyntheticAPI(datafeed_api=dda) metrics = dsa.list_metrics() item1 = {"mask": "css_3_bttfp_c", "name": "3rd Party CSS Count Before TTFP", "desc": "3rd Party CSS Count Before Time to First Paint", "unit": "number"} item2 = {"mask": "css_3_o_s", "name": "3rd Party CSS Size", "desc": "3rd Party CSS Size", "unit": "b"} self.assertTrue(item1 in metrics) self.assertTrue(item2 in metrics)
def test_mocked_metric_list_content(self): dda = DynatraceDatafeedAPI(login=self.login_exp, passwordhash=self.passwordhash_exp) dda._setMock(mock_data={'rc': 200, 'body': self.json_metrics_success}) self.assertEqual(dda.info(list='metrics'), self.json_metrics_success)