summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_codecs.py
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2013-01-29 09:06:28 (GMT)
committerSerhiy Storchaka <storchaka@gmail.com>2013-01-29 09:06:28 (GMT)
commit7277f9d09947ccc86410b33883ffec70cac06f3a (patch)
tree6ace3e5a8ff77befb6c28137d370c17eb70578c6 /Lib/test/test_codecs.py
parentf89ad15b12b00ca001da6afe0bec52c0822859af (diff)
downloadcpython-7277f9d09947ccc86410b33883ffec70cac06f3a.zip
cpython-7277f9d09947ccc86410b33883ffec70cac06f3a.tar.gz
cpython-7277f9d09947ccc86410b33883ffec70cac06f3a.tar.bz2
Clean up escape-decode decoder tests.
Diffstat (limited to 'Lib/test/test_codecs.py')
-rw-r--r--Lib/test/test_codecs.py76
1 files changed, 40 insertions, 36 deletions
diff --git a/Lib/test/test_codecs.py b/Lib/test/test_codecs.py
index 2359917..3d541e3 100644
--- a/Lib/test/test_codecs.py
+++ b/Lib/test/test_codecs.py
@@ -736,48 +736,52 @@ class EscapeDecodeTest(unittest.TestCase):
self.assertEqual(codecs.escape_decode(""), ("", 0))
def test_raw(self):
- for b in ''.join(map(chr, range(256))):
+ decode = codecs.escape_decode
+ for b in range(256):
+ b = chr(b)
if b != '\\':
- self.assertEqual(codecs.escape_decode(b + '0'),
- (b + '0', 2))
+ self.assertEqual(decode(b + '0'), (b + '0', 2))
def test_escape(self):
- self.assertEqual(codecs.escape_decode(b"[\\\n]"), (b"[]", 4))
- self.assertEqual(codecs.escape_decode(br'[\"]'), (b'["]', 4))
- self.assertEqual(codecs.escape_decode(br"[\']"), (b"[']", 4))
- self.assertEqual(codecs.escape_decode(br"[\\]"), (br"[\]", 4))
- self.assertEqual(codecs.escape_decode(br"[\a]"), (b"[\x07]", 4))
- self.assertEqual(codecs.escape_decode(br"[\b]"), (b"[\x08]", 4))
- self.assertEqual(codecs.escape_decode(br"[\t]"), (b"[\x09]", 4))
- self.assertEqual(codecs.escape_decode(br"[\n]"), (b"[\x0a]", 4))
- self.assertEqual(codecs.escape_decode(br"[\v]"), (b"[\x0b]", 4))
- self.assertEqual(codecs.escape_decode(br"[\f]"), (b"[\x0c]", 4))
- self.assertEqual(codecs.escape_decode(br"[\r]"), (b"[\x0d]", 4))
- self.assertEqual(codecs.escape_decode(br"[\7]"), (b"[\x07]", 4))
- self.assertEqual(codecs.escape_decode(br"[\8]"), (br"[\8]", 4))
- self.assertEqual(codecs.escape_decode(br"[\78]"), (b"[\x078]", 5))
- self.assertEqual(codecs.escape_decode(br"[\41]"), (b"[!]", 5))
- self.assertEqual(codecs.escape_decode(br"[\418]"), (b"[!8]", 6))
- self.assertEqual(codecs.escape_decode(br"[\101]"), (b"[A]", 6))
- self.assertEqual(codecs.escape_decode(br"[\1010]"), (b"[A0]", 7))
- self.assertEqual(codecs.escape_decode(br"[\501]"), (b"[A]", 6))
- self.assertEqual(codecs.escape_decode(br"[\x41]"), (b"[A]", 6))
- self.assertEqual(codecs.escape_decode(br"[\X41]"), (br"[\X41]", 6))
- self.assertEqual(codecs.escape_decode(br"[\x410]"), (b"[A0]", 7))
- for b in ''.join(map(chr, range(256))):
+ decode = codecs.escape_decode
+ check = coding_checker(self, decode)
+ check(b"[\\\n]", b"[]")
+ check(br'[\"]', b'["]')
+ check(br"[\']", b"[']")
+ check(br"[\\]", br"[\]")
+ check(br"[\a]", b"[\x07]")
+ check(br"[\b]", b"[\x08]")
+ check(br"[\t]", b"[\x09]")
+ check(br"[\n]", b"[\x0a]")
+ check(br"[\v]", b"[\x0b]")
+ check(br"[\f]", b"[\x0c]")
+ check(br"[\r]", b"[\x0d]")
+ check(br"[\7]", b"[\x07]")
+ check(br"[\8]", br"[\8]")
+ check(br"[\78]", b"[\x078]")
+ check(br"[\41]", b"[!]")
+ check(br"[\418]", b"[!8]")
+ check(br"[\101]", b"[A]")
+ check(br"[\1010]", b"[A0]")
+ check(br"[\501]", b"[A]")
+ check(br"[\x41]", b"[A]")
+ check(br"[\X41]", br"[\X41]")
+ check(br"[\x410]", b"[A0]")
+ for b in range(256):
+ b = chr(b)
if b not in '\n"\'\\abtnvfr01234567x':
- self.assertEqual(codecs.escape_decode('\\' + b),
- ('\\' + b, 2))
+ check('\\' + b, '\\' + b)
def test_errors(self):
- self.assertRaises(ValueError, codecs.escape_decode, br"\x")
- self.assertRaises(ValueError, codecs.escape_decode, br"[\x]")
- self.assertEqual(codecs.escape_decode(br"[\x]\x", "ignore"), (b"[]", 6))
- self.assertEqual(codecs.escape_decode(br"[\x]\x", "replace"), (b"[?]?", 6))
- self.assertRaises(ValueError, codecs.escape_decode, br"\x0")
- self.assertRaises(ValueError, codecs.escape_decode, br"[\x0]")
- self.assertEqual(codecs.escape_decode(br"[\x0]\x0", "ignore"), (b"[]", 8))
- self.assertEqual(codecs.escape_decode(br"[\x0]\x0", "replace"), (b"[?]?", 8))
+ decode = codecs.escape_decode
+ self.assertRaises(ValueError, decode, br"\x")
+ self.assertRaises(ValueError, decode, br"[\x]")
+ self.assertEqual(decode(br"[\x]\x", "ignore"), (b"[]", 6))
+ self.assertEqual(decode(br"[\x]\x", "replace"), (b"[?]?", 6))
+ self.assertRaises(ValueError, decode, br"\x0")
+ self.assertRaises(ValueError, decode, br"[\x0]")
+ self.assertEqual(decode(br"[\x0]\x0", "ignore"), (b"[]", 8))
+ self.assertEqual(decode(br"[\x0]\x0", "replace"), (b"[?]?", 8))
class RecodingTest(unittest.TestCase):
def test_recoding(self):