Skip to content

Commit

Permalink
feat: replace ' ' with '_'
Browse files Browse the repository at this point in the history
Signed-off-by: Dominik Rosiek <drosiek@sumologic.com>
  • Loading branch information
Dominik Rosiek committed Sep 8, 2021
1 parent e39d412 commit 1677c0e
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 20 deletions.
6 changes: 1 addition & 5 deletions sumologic_collectd_metrics/metrics_util.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-

_reserved_symbols = {
' ': None,
' ': '_',
'=': ':',
}

Expand Down Expand Up @@ -41,10 +41,6 @@ def validate_field(value, field, label1, label2):

for reserved_symbol, replacement in _reserved_symbols.items():
if reserved_symbol in value:
if replacement is None:
raise Exception('%s %s for %s %s must not contain reserved symbol \"%s\"' %
(label1, value, label2, field, reserved_symbol))

value = value.replace(reserved_symbol, replacement)
return value

Expand Down
20 changes: 5 additions & 15 deletions test/test_metrics_config.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# -*- coding: utf-8 -*-

import os

import pytest
from collectd.collectd_config import CollectdConfig, ConfigNode
from collectd import Helper
from collectd import CollecdMock
from sumologic_collectd_metrics.metrics_config import MetricsConfig, ConfigOptions
from sumologic_collectd_metrics.metrics_config import (ConfigOptions,
MetricsConfig)

from collectd import CollecdMock, Helper
from collectd.collectd_config import CollectdConfig, ConfigNode

cwd = os.getcwd()

Expand Down Expand Up @@ -245,17 +246,6 @@ def test_invalid_http_post_interval_exception():
assert 'Specify HttpPostInterval' in str(e)


def test_contains_reserved_symbols_exception():
with pytest.raises(Exception) as e:
met_config = Helper.default_config()
tags = ('meta_key1', 'meta_val1', 'meta_key2', 'meta val2')
config = CollectdConfig([Helper.url_node(), Helper.types_db_node(),
tags_node(ConfigOptions.meta_tags, tags)])
met_config.parse_config(config)

assert 'Value meta val2 for Key Metadata must not contain reserved symbol " "' in str(e)


def test_invalid_ds_in_types_db():
met_config = Helper.default_config()
types_db_node = ConfigNode(ConfigOptions.types_db, [cwd + '/test/types_invalid_ds.db'])
Expand Down
4 changes: 4 additions & 0 deletions test/test_metrics_converter.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ def test_gen_value_not_string_exception():
assert expected, value


def test_gen_value_reserved():
assert gen_tag('tag_key space=', 'tag_value=t st') == 'tag_key_space:=tag_value:t_st'


def test_tags_to_str():
tags = ['tag_key1=tag_val1', 'tag_key2=tag_val2', 'tag_key3=tag_val3']
tag_str = tags_to_str(tags)
Expand Down

0 comments on commit 1677c0e

Please sign in to comment.