»Core Development>Code coverage>Lib/test/test_pep263.py

Python code coverage for Lib/test/test_pep263.py

#countcontent
1n/a# -*- coding: koi8-r -*-
2n/a
3n/aimport unittest
4n/afrom test import support
5n/a
6n/aclass PEP263Test(unittest.TestCase):
7n/a
8n/a def test_pep263(self):
9n/a self.assertEqual(
10n/a "ðÉÔÏÎ".encode("utf-8"),
11n/a b'\xd0\x9f\xd0\xb8\xd1\x82\xd0\xbe\xd0\xbd'
12n/a )
13n/a self.assertEqual(
14n/a "\ð".encode("utf-8"),
15n/a b'\\\xd0\x9f'
16n/a )
17n/a
18n/a def test_compilestring(self):
19n/a # see #1882
20n/a c = compile(b"\n# coding: utf-8\nu = '\xc3\xb3'\n", "dummy", "exec")
21n/a d = {}
22n/a exec(c, d)
23n/a self.assertEqual(d['u'], '\xf3')
24n/a
25n/a def test_issue2301(self):
26n/a try:
27n/a compile(b"# coding: cp932\nprint '\x94\x4e'", "dummy", "exec")
28n/a except SyntaxError as v:
29n/a self.assertEqual(v.text, "print '\u5e74'\n")
30n/a else:
31n/a self.fail()
32n/a
33n/a def test_issue4626(self):
34n/a c = compile("# coding=latin-1\n\u00c6 = '\u00c6'", "dummy", "exec")
35n/a d = {}
36n/a exec(c, d)
37n/a self.assertEqual(d['\xc6'], '\xc6')
38n/a
39n/a def test_issue3297(self):
40n/a c = compile("a, b = '\U0001010F', '\\U0001010F'", "dummy", "exec")
41n/a d = {}
42n/a exec(c, d)
43n/a self.assertEqual(d['a'], d['b'])
44n/a self.assertEqual(len(d['a']), len(d['b']))
45n/a self.assertEqual(ascii(d['a']), ascii(d['b']))
46n/a
47n/a def test_issue7820(self):
48n/a # Ensure that check_bom() restores all bytes in the right order if
49n/a # check_bom() fails in pydebug mode: a buffer starts with the first
50n/a # byte of a valid BOM, but next bytes are different
51n/a
52n/a # one byte in common with the UTF-16-LE BOM
53n/a self.assertRaises(SyntaxError, eval, b'\xff\x20')
54n/a
55n/a # two bytes in common with the UTF-8 BOM
56n/a self.assertRaises(SyntaxError, eval, b'\xef\xbb\x20')
57n/a
58n/a def test_error_message(self):
59n/a compile(b'# -*- coding: iso-8859-15 -*-\n', 'dummy', 'exec')
60n/a compile(b'\xef\xbb\xbf\n', 'dummy', 'exec')
61n/a compile(b'\xef\xbb\xbf# -*- coding: utf-8 -*-\n', 'dummy', 'exec')
62n/a with self.assertRaisesRegexp(SyntaxError, 'fake'):
63n/a compile(b'# -*- coding: fake -*-\n', 'dummy', 'exec')
64n/a with self.assertRaisesRegexp(SyntaxError, 'iso-8859-15'):
65n/a compile(b'\xef\xbb\xbf# -*- coding: iso-8859-15 -*-\n',
66n/a 'dummy', 'exec')
67n/a with self.assertRaisesRegexp(SyntaxError, 'BOM'):
68n/a compile(b'\xef\xbb\xbf# -*- coding: iso-8859-15 -*-\n',
69n/a 'dummy', 'exec')
70n/a with self.assertRaisesRegexp(SyntaxError, 'fake'):
71n/a compile(b'\xef\xbb\xbf# -*- coding: fake -*-\n', 'dummy', 'exec')
72n/a with self.assertRaisesRegexp(SyntaxError, 'BOM'):
73n/a compile(b'\xef\xbb\xbf# -*- coding: fake -*-\n', 'dummy', 'exec')
74n/a
75n/a
76n/adef test_main():
77n/a support.run_unittest(PEP263Test)
78n/a
79n/aif __name__=="__main__":
80n/a test_main()