summaryrefslogtreecommitdiff
path: root/simplejson/tests/test_tuple.py
diff options
context:
space:
mode:
authorBob Ippolito <bob@redivi.com>2011-09-04 01:41:37 -0700
committerBob Ippolito <bob@redivi.com>2011-09-04 01:41:37 -0700
commit5cc3960c70494c1651f4e0e18d5549d18f3f67e0 (patch)
treed5f94737b113509f03b0e359edc4c89fd3938314 /simplejson/tests/test_tuple.py
parent50631cf809830d4c398cee58159643913cd89411 (diff)
downloadsimplejson-5cc3960c70494c1651f4e0e18d5549d18f3f67e0.tar.gz
2.2.0 - namedtuple_as_object and tuple_as_array options, use_decimal now True on encodingnamedtuple-object-gh6
Diffstat (limited to 'simplejson/tests/test_tuple.py')
-rw-r--r--simplejson/tests/test_tuple.py49
1 files changed, 49 insertions, 0 deletions
diff --git a/simplejson/tests/test_tuple.py b/simplejson/tests/test_tuple.py
new file mode 100644
index 0000000..92856a7
--- /dev/null
+++ b/simplejson/tests/test_tuple.py
@@ -0,0 +1,49 @@
+import unittest
+from StringIO import StringIO
+
+import simplejson as json
+
+class TestTuples(unittest.TestCase):
+ def test_tuple_array_dumps(self):
+ t = (1, 2, 3)
+ expect = json.dumps(list(t))
+ # Default is True
+ self.assertEqual(expect, json.dumps(t))
+ self.assertEqual(expect, json.dumps(t, tuple_as_array=True))
+ self.assertRaises(TypeError, json.dumps, t, tuple_as_array=False)
+ # Ensure that the "default" does not get called
+ self.assertEqual(expect, json.dumps(t, default=repr))
+ self.assertEqual(expect, json.dumps(t, tuple_as_array=True, default=repr))
+ # Ensure that the "default" gets called
+ self.assertEqual(
+ json.dumps(repr(t)),
+ json.dumps(t, tuple_as_array=False, default=repr))
+
+ def test_tuple_array_dump(self):
+ t = (1, 2, 3)
+ expect = json.dumps(list(t))
+ # Default is True
+ sio = StringIO()
+ json.dump(t, sio)
+ self.assertEqual(expect, sio.getvalue())
+ sio = StringIO()
+ json.dump(t, sio, tuple_as_array=True)
+ self.assertEqual(expect, sio.getvalue())
+ self.assertRaises(TypeError, json.dump, t, StringIO(), tuple_as_array=False)
+ # Ensure that the "default" does not get called
+ sio = StringIO()
+ json.dump(t, sio, default=repr)
+ self.assertEqual(expect, sio.getvalue())
+ sio = StringIO()
+ json.dump(t, sio, tuple_as_array=True, default=repr)
+ self.assertEqual(expect, sio.getvalue())
+ # Ensure that the "default" gets called
+ sio = StringIO()
+ json.dump(t, sio, tuple_as_array=False, default=repr)
+ self.assertEqual(
+ json.dumps(repr(t)),
+ sio.getvalue())
+
+class TestNamedTuple(unittest.TestCase):
+ def test_namedtuple_dump(self):
+ pass \ No newline at end of file