def test_convert_to_metrics_multiple(): d = Values(type='test_type_2', values=[1.23, 4.56], ds_names=['test_ds_name1', 'test_ds_name2'], ds_types=['test_ds_type1', 'test_ds_type2']) helper = Helper() metrics = convert_to_metrics(d, helper.types) assert metrics == d.metrics_str()
def test_convert_to_metrics_type_format_exception(): with pytest.raises(Exception) as e: d = Values(type='test_type_2', values=[1.23], ds_names=['test_ds_name1', 'test_ds_name2'], ds_types=['test_ds_type1', 'test_ds_type2']) helper = Helper() convert_to_metrics(d, helper.types) assert 'Number values [1.23] differ from types defined for test_type_2' in str(e)
def test_convert_to_metrics_type_nonexist_exception(): with pytest.raises(Exception) as e: d = Values(type='test_type_3', values=[1.23], ds_names=['test_ds_name1', 'test_ds_name2'], ds_types=['test_ds_type1', 'test_ds_type2']) helper = Helper() convert_to_metrics(d, helper.types) assert 'Do not know how to handle type test_type_3. ' \ 'Do you have all your types.db files configured?' in str(e)
def helper_test_post_unrecoverable_exception(exception, error_code): with pytest.raises(Exception) as e: met_buffer = Helper.get_buffer(10) helper = Helper() requests.mock_response.set(error_code) requests.post_response_decider.set(False, True, exception, 5, 0) for i in range(10): met_buffer.put_pending_batch(['batch_%s' % i]) Helper.get_sender(helper.conf, met_buffer) assert e.type == type(exception)
def test_post_normal_no_additional_header(): met_buffer = Helper.get_buffer(10) helper = Helper() for i in range(10): met_buffer.put_pending_batch(['batch_%s' % i]) met_sender = Helper.get_sender(helper.conf, met_buffer) sleep_helper(10, 0.100, 100) assert requests.mock_server.url == helper.conf[ConfigOptions.url] assert requests.mock_server.headers == { HeaderKeys.content_type: helper.conf[ConfigOptions.content_type], HeaderKeys.content_encoding: helper.conf[ConfigOptions.content_encoding] } for i in range(10): assert_utf8_equal(helper.conf, requests.mock_server.data[i], 'batch_%s' % i) met_sender.cancel_timer()
def test_convert_to_metrics_single(): d = Values() helper = Helper() metrics = convert_to_metrics(d, helper.types) assert metrics == d.metrics_str()