+++ /dev/null
-from json.tests import PyTest, CTest\r
-\r
-\r
-def default_iterable(obj):\r
- return list(obj)\r
-\r
-class TestCheckCircular(object):\r
- def test_circular_dict(self):\r
- dct = {}\r
- dct['a'] = dct\r
- self.assertRaises(ValueError, self.dumps, dct)\r
-\r
- def test_circular_list(self):\r
- lst = []\r
- lst.append(lst)\r
- self.assertRaises(ValueError, self.dumps, lst)\r
-\r
- def test_circular_composite(self):\r
- dct2 = {}\r
- dct2['a'] = []\r
- dct2['a'].append(dct2)\r
- self.assertRaises(ValueError, self.dumps, dct2)\r
-\r
- def test_circular_default(self):\r
- self.dumps([set()], default=default_iterable)\r
- self.assertRaises(TypeError, self.dumps, [set()])\r
-\r
- def test_circular_off_default(self):\r
- self.dumps([set()], default=default_iterable, check_circular=False)\r
- self.assertRaises(TypeError, self.dumps, [set()], check_circular=False)\r
-\r
-\r
-class TestPyCheckCircular(TestCheckCircular, PyTest): pass\r
-class TestCCheckCircular(TestCheckCircular, CTest): pass\r