def test_json_parsing_minimal_input(self): md = common.json_to_metric_data('{"name": "testname", "value": 13}') self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.points[0].value, 13) self.assertIsNone(md.start_time) self.assertIsNone(md.points[0].fields)
def test_json_parsing_minimal_input(self): md = common.json_to_metric_data('{"name": "testname", "value": 13}') self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.value, 13) self.assertIsNone(md.start_time) self.assertIsNone(md.fields)
def test_json_parsing_with_start_time(self): md = common.json_to_metric_data('{"name": "testname", "value": 13, ' '"start_time": 1234}') self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.points[0].value, 13) self.assertEquals(md.start_time, 1234) self.assertIsNone(md.points[0].fields)
def test_json_parsing_with_start_time(self): md = common.json_to_metric_data('{"name": "testname", "value": 13, ' '"start_time": 1234}') self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.value, 13) self.assertEquals(md.start_time, 1234) self.assertIsNone(md.fields)
def test_json_parsing_with_fields(self): md = common.json_to_metric_data('{"name": "testname", "value": 13, ' '"myfield": "mystring", "otherfield": 42}') self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.value, 13) self.assertIsNone(md.start_time) self.assertEquals(md.fields, {'myfield': 'mystring', 'otherfield': 42})
def test_json_parsing_base64(self): json_str = ('{"name": "testname", "value": 13, ' '"myfield": "mystring", "otherfield": 42}') json_base64 = base64.b64encode(json_str) md = common.json_to_metric_data(json_base64) self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.points[0].value, 13) self.assertIsNone(md.start_time) self.assertEquals(md.points[0].fields, {'myfield': 'mystring', 'otherfield': 42})
def test_json_parsing_with_fields(self): md = common.json_to_metric_data( '{"name": "testname", "value": 13, ' '"myfield": "mystring", "otherfield": 42}') self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.points[0].value, 13) self.assertIsNone(md.start_time) self.assertEquals(md.points[0].fields, { 'myfield': 'mystring', 'otherfield': 42 })
def test_json_parsing_base64(self): json_str = ('{"name": "testname", "value": 13, ' '"myfield": "mystring", "otherfield": 42}') json_base64 = base64.b64encode(json_str) md = common.json_to_metric_data(json_base64) self.assertIsInstance(md.name, str) self.assertEquals(md.name, "testname") self.assertEquals(md.points[0].value, 13) self.assertIsNone(md.start_time) self.assertEquals(md.points[0].fields, { 'myfield': 'mystring', 'otherfield': 42 })
def test_json_parsing_bad_string(self): with self.assertRaises(ValueError): common.json_to_metric_data('}')
def test_json_parsing_with_missing_value(self): with self.assertRaises(KeyError): common.json_to_metric_data( '{"name": "test/name", "start_time": 1234}')
def test_json_parsing_invalid_json(self): with self.assertRaises(ValueError): common.json_to_metric_data('{"blah:')
def test_json_parsing_bad_string(self): self.assertIsNone(common.json_to_metric_data('}'))
def test_json_parsing_invalid_json(self): self.assertIsNone(common.json_to_metric_data('{"blah:'))
def test_json_parsing_invalid_base64_2(self): # 'blah' does NOT raise TypeError in base64.b64decode self.assertIsNone(common.json_to_metric_data('blah'))
def test_json_parsing_invalid_base64_1(self): # 'bd' raises TypeError in base64.b64decode self.assertIsNone(common.json_to_metric_data('bd'))
def test_json_parsing_with_missing_value(self): with self.assertRaises(KeyError): common.json_to_metric_data('{"name": "test/name", "start_time": 1234}')
def test_json_parsing_invalid_base64_2(self): # 'blah' does NOT raise TypeError in base64.b64decode with self.assertRaises(ValueError): common.json_to_metric_data('blah')
def test_json_parsing_with_missing_value(self): self.assertIsNone(common.json_to_metric_data( '{"name": "test/name", "start_time": 1234}'))