Merge with 3.1.

This commit is contained in:
Ezio Melotti 2011-04-13 07:18:24 +03:00
commit 04c6423fba
5 changed files with 34 additions and 9 deletions

View file

@ -31,6 +31,11 @@ class TestDecode(TestCase):
self.assertTrue(isinstance(rval, float))
self.assertEqual(rval, 1.0)
def test_empty_objects(self):
self.assertEqual(json.loads('{}'), {})
self.assertEqual(json.loads('[]'), [])
self.assertEqual(json.loads('""'), "")
def test_object_pairs_hook(self):
s = '{"xkd":1, "kcw":2, "art":3, "hxm":4, "qrt":5, "pad":6, "hoy":7}'
p = [("xkd", 1), ("kcw", 2), ("art", 3), ("hxm", 4),

View file

@ -1,14 +1,19 @@
import sys
import decimal
from unittest import TestCase
from unittest import TestCase, skipUnless
import json
import json.decoder
try:
import _json
except ImportError:
_json = None
class TestScanString(TestCase):
def test_py_scanstring(self):
self._test_scanstring(json.decoder.py_scanstring)
@skipUnless(_json, 'test requires the _json module')
def test_c_scanstring(self):
if json.decoder.c_scanstring is not None:
self._test_scanstring(json.decoder.c_scanstring)

View file

@ -1,16 +1,22 @@
from unittest import TestCase
from unittest import TestCase, skipUnless
from json import decoder, encoder, scanner
try:
import _json
except ImportError:
_json = None
@skipUnless(_json, 'test requires the _json module')
class TestSpeedups(TestCase):
def test_scanstring(self):
self.assertEqual(decoder.scanstring.__module__, "_json")
self.assertTrue(decoder.scanstring is decoder.c_scanstring)
self.assertIs(decoder.scanstring, decoder.c_scanstring)
def test_encode_basestring_ascii(self):
self.assertEqual(encoder.encode_basestring_ascii.__module__, "_json")
self.assertTrue(encoder.encode_basestring_ascii is
encoder.c_encode_basestring_ascii)
self.assertIs(encoder.encode_basestring_ascii,
encoder.c_encode_basestring_ascii)
class TestDecode(TestCase):
def test_make_scanner(self):