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)
Esempio n. 4
0
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)
Esempio n. 5
0
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()