Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 24 additions & 19 deletions tests/test_core.py
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,9 @@ def test_inc_not_observable(self):
assert_not_observable(counter.inc)

def test_exemplar_invalid_label_name(self):
enable_legacy_validation()
self.assertRaises(ValueError, self.counter.inc, exemplar={':o)': 'smile'})
self.assertRaises(ValueError, self.counter.inc, exemplar={'1': 'number'})
disable_legacy_validation()
with LegacyValidationContextManager():
self.assertRaises(ValueError, self.counter.inc, exemplar={':o)': 'smile'})
self.assertRaises(ValueError, self.counter.inc, exemplar={'1': 'number'})
self.counter.inc(exemplar={':o)': 'smile'})
self.counter.inc(exemplar={'1': 'number'})

Expand Down Expand Up @@ -510,12 +509,11 @@ def test_block_decorator_with_label(self):
self.assertEqual(1, value('hl_bucket', {'le': '+Inf', 'l': 'a'}))

def test_exemplar_invalid_legacy_label_name(self):
enable_legacy_validation()
self.assertRaises(ValueError, self.histogram.observe, 3.0, exemplar={':o)': 'smile'})
self.assertRaises(ValueError, self.histogram.observe, 3.0, exemplar={'1': 'number'})

with LegacyValidationContextManager():
self.assertRaises(ValueError, self.histogram.observe, 3.0, exemplar={':o)': 'smile'})
self.assertRaises(ValueError, self.histogram.observe, 3.0, exemplar={'1': 'number'})
def test_exemplar_invalid_label_name(self):
disable_legacy_validation()
self.histogram.observe(3.0, exemplar={':o)': 'smile'})
self.histogram.observe(3.0, exemplar={'1': 'number'})

Expand Down Expand Up @@ -660,18 +658,17 @@ def test_labels_by_kwarg(self):
self.assertRaises(ValueError, self.two_labels.labels, {'a': 'x'}, b='y')

def test_invalid_legacy_names_raise(self):
enable_legacy_validation()
self.assertRaises(ValueError, Counter, '', 'help')
self.assertRaises(ValueError, Counter, '^', 'help')
self.assertRaises(ValueError, Counter, '', 'help', namespace='&')
self.assertRaises(ValueError, Counter, '', 'help', subsystem='(')
self.assertRaises(ValueError, Counter, 'c_total', '', labelnames=['^'])
self.assertRaises(ValueError, Counter, 'c_total', '', labelnames=['a:b'])
self.assertRaises(ValueError, Counter, 'c_total', '', labelnames=['__reserved'])
self.assertRaises(ValueError, Summary, 'c_total', '', labelnames=['quantile'])
with LegacyValidationContextManager():
self.assertRaises(ValueError, Counter, '', 'help')
self.assertRaises(ValueError, Counter, '^', 'help')
self.assertRaises(ValueError, Counter, '', 'help', namespace='&')
self.assertRaises(ValueError, Counter, '', 'help', subsystem='(')
self.assertRaises(ValueError, Counter, 'c_total', '', labelnames=['^'])
self.assertRaises(ValueError, Counter, 'c_total', '', labelnames=['a:b'])
self.assertRaises(ValueError, Counter, 'c_total', '', labelnames=['__reserved'])
self.assertRaises(ValueError, Summary, 'c_total', '', labelnames=['quantile'])

def test_invalid_names_raise(self):
disable_legacy_validation()
self.assertRaises(ValueError, Counter, '', 'help')
self.assertRaises(ValueError, Counter, '', 'help', namespace='&')
self.assertRaises(ValueError, Counter, '', 'help', subsystem='(')
Expand Down Expand Up @@ -1007,5 +1004,13 @@ def test_restricted_registry_does_not_yield_while_locked(self):
self.assertFalse(registry._lock.locked())


class LegacyValidationContextManager:
def __enter__(self):
enable_legacy_validation()

def __exit__(self, exc_type, exc_value, exc_tb):
disable_legacy_validation()


if __name__ == '__main__':
unittest.main()