Allow () in dimensions

Change-Id: Ic61a325162873572cad387593c7107cba1a41e15
This commit is contained in:
Ryan Brandt 2017-11-30 15:24:46 -07:00
parent b2bda29d20
commit 7f91a53128
2 changed files with 5 additions and 4 deletions

View File

@ -24,7 +24,7 @@ invalid_name_chars = " <>={}(),\"\\\\;&"
# a few valid characters to test
valid_dimension_chars = " .'_-"
invalid_dimension_chars = "<>={}(),\"\\\\;&"
invalid_dimension_chars = "<>={},\"\\\\;&"
class TestMetricValidation(base.BaseTestCase):
@ -182,7 +182,7 @@ class TestMetricValidation(base.BaseTestCase):
def test_invalid_dimension_key_restricted_characters(self):
metric = {"name": "test_metric_name",
"dimensions": {'A': 'B', 'B': 'C', '(D)': 'E'},
"dimensions": {'A': 'B', 'B': 'C', 'D=': 'E'},
"timestamp": 1405630174123,
"value": 5}
self.assertRaisesRegex(

View File

@ -30,9 +30,9 @@ VALUE_META_MAX_NUMBER = 16
VALUE_META_VALUE_MAX_LENGTH = 2048
VALUE_META_NAME_MAX_LENGTH = 255
INVALID_CHARS = "<>={}(),\"\\\\;&"
INVALID_CHARS = "<>={},\"\\\\;&"
RESTRICTED_DIMENSION_CHARS = re.compile('[' + INVALID_CHARS + ']')
RESTRICTED_NAME_CHARS = re.compile('[' + INVALID_CHARS + ' ' + ']')
RESTRICTED_NAME_CHARS = re.compile('[' + INVALID_CHARS + '() ' + ']')
NUMERIC_VALUES = [int, float]
if six.PY2:
@ -42,6 +42,7 @@ if six.PY2:
NUMERIC_VALUES = tuple(NUMERIC_VALUES) # convert to tuple for instance call
class InvalidMetricName(Exception):
pass