diff --git a/oslo_serialization/jsonutils.py b/oslo_serialization/jsonutils.py index 7df6496..90a5acf 100644 --- a/oslo_serialization/jsonutils.py +++ b/oslo_serialization/jsonutils.py @@ -167,7 +167,7 @@ def to_primitive(value, convert_instances=False, convert_datetime=True, # __iter__ defined but it isn't callable as list(). return six.text_type(value) - return value + raise ValueError("Cannot convert %r to primitive" % (value,)) JSONEncoder = json.JSONEncoder diff --git a/oslo_serialization/tests/test_jsonutils.py b/oslo_serialization/tests/test_jsonutils.py index f649db3..b030b8f 100644 --- a/oslo_serialization/tests/test_jsonutils.py +++ b/oslo_serialization/tests/test_jsonutils.py @@ -254,7 +254,7 @@ class ToPrimitiveTestCase(test_base.BaseTestCase): self.assertEqual(dict(b=1), jsonutils.to_primitive(x, convert_instances=True)) - self.assertEqual(x, jsonutils.to_primitive(x)) + self.assertRaises(ValueError, jsonutils.to_primitive, x) def test_typeerror(self): x = bytearray # Class, not instance