Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
9702a17a
Commit
9702a17a
authored
Jun 13, 2013
by
Serhiy Storchaka
Browse files
Options
Browse Files
Download
Plain Diff
Issue #18048: Merge test_pep263.py and test_coding.py into test_source_encoding.py.
parents
07c805d0
29f2d730
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
76 additions
and
87 deletions
+76
-87
Lib/test/test_pep263.py
Lib/test/test_pep263.py
+0
-80
Lib/test/test_source_encoding.py
Lib/test/test_source_encoding.py
+76
-7
No files found.
Lib/test/test_pep263.py
deleted
100644 → 0
View file @
07c805d0
# -*- coding: koi8-r -*-
import
unittest
from
test
import
support
class
PEP263Test
(
unittest
.
TestCase
):
def
test_pep263
(
self
):
self
.
assertEqual
(
""
.
encode
(
"utf-8"
),
b'
\
xd0
\
x9f
\
xd0
\
xb8
\
xd1
\
x82
\
xd0
\
xbe
\
xd0
\
xbd
'
)
self
.
assertEqual
(
"
\
"
.encode("
utf
-
8
"),
b'
\
\
\
xd0
\
x9f
'
)
def test_compilestring(self):
# see #1882
c = compile(b"
\
n
# coding: utf-8\nu = '\xc3\xb3'\n", "dummy", "exec")
d
=
{}
exec
(
c
,
d
)
self
.
assertEqual
(
d
[
'u'
],
'
\
xf3
'
)
def
test_issue2301
(
self
):
try
:
compile
(
b"# coding: cp932
\
n
print '
\
x94
\
x4e
'"
,
"dummy"
,
"exec"
)
except
SyntaxError
as
v
:
self
.
assertEqual
(
v
.
text
,
"print '
\
u5e74
'
\
n
"
)
else
:
self
.
fail
()
def
test_issue4626
(
self
):
c
=
compile
(
"# coding=latin-1
\
n
\
u00c6
= '
\
u00c6
'"
,
"dummy"
,
"exec"
)
d
=
{}
exec
(
c
,
d
)
self
.
assertEqual
(
d
[
'
\
xc6
'
],
'
\
xc6
'
)
def
test_issue3297
(
self
):
c
=
compile
(
"a, b = '
\
U0001010F
', '
\
\
U0001010F'"
,
"dummy"
,
"exec"
)
d
=
{}
exec
(
c
,
d
)
self
.
assertEqual
(
d
[
'a'
],
d
[
'b'
])
self
.
assertEqual
(
len
(
d
[
'a'
]),
len
(
d
[
'b'
]))
self
.
assertEqual
(
ascii
(
d
[
'a'
]),
ascii
(
d
[
'b'
]))
def
test_issue7820
(
self
):
# Ensure that check_bom() restores all bytes in the right order if
# check_bom() fails in pydebug mode: a buffer starts with the first
# byte of a valid BOM, but next bytes are different
# one byte in common with the UTF-16-LE BOM
self
.
assertRaises
(
SyntaxError
,
eval
,
b'
\
xff
\
x20
'
)
# two bytes in common with the UTF-8 BOM
self
.
assertRaises
(
SyntaxError
,
eval
,
b'
\
xef
\
xbb
\
x20
'
)
def
test_error_message
(
self
):
compile
(
b'# -*- coding: iso-8859-15 -*-
\
n
'
,
'dummy'
,
'exec'
)
compile
(
b'
\
xef
\
xbb
\
xbf
\
n
'
,
'dummy'
,
'exec'
)
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: utf-8 -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'fake'
):
compile
(
b'# -*- coding: fake -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'iso-8859-15'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: iso-8859-15 -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'BOM'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: iso-8859-15 -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'fake'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: fake -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'BOM'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: fake -*-
\
n
'
,
'dummy'
,
'exec'
)
def
test_main
():
support
.
run_unittest
(
PEP263Test
)
if
__name__
==
"__main__"
:
test_main
()
Lib/test/test_source_encoding.py
View file @
9702a17a
import
test.support
,
unittest
# -*- coding: koi8-r -*-
import
unittest
from
test.support
import
TESTFN
,
unlink
,
unload
import
importlib
,
os
,
sys
import
importlib
import
os
import
sys
class
SourceEncodingTest
(
unittest
.
TestCase
):
def
test_pep263
(
self
):
self
.
assertEqual
(
""
.
encode
(
"utf-8"
),
b'
\
xd0
\
x9f
\
xd0
\
xb8
\
xd1
\
x82
\
xd0
\
xbe
\
xd0
\
xbd
'
)
self
.
assertEqual
(
"
\
"
.encode("
utf
-
8
"),
b'
\
\
\
xd0
\
x9f
'
)
def test_compilestring(self):
# see #1882
c = compile(b"
\
n
# coding: utf-8\nu = '\xc3\xb3'\n", "dummy", "exec")
d
=
{}
exec
(
c
,
d
)
self
.
assertEqual
(
d
[
'u'
],
'
\
xf3
'
)
def
test_issue2301
(
self
):
try
:
compile
(
b"# coding: cp932
\
n
print '
\
x94
\
x4e
'"
,
"dummy"
,
"exec"
)
except
SyntaxError
as
v
:
self
.
assertEqual
(
v
.
text
,
"print '
\
u5e74
'
\
n
"
)
else
:
self
.
fail
()
def
test_issue4626
(
self
):
c
=
compile
(
"# coding=latin-1
\
n
\
u00c6
= '
\
u00c6
'"
,
"dummy"
,
"exec"
)
d
=
{}
exec
(
c
,
d
)
self
.
assertEqual
(
d
[
'
\
xc6
'
],
'
\
xc6
'
)
def
test_issue3297
(
self
):
c
=
compile
(
"a, b = '
\
U0001010F
', '
\
\
U0001010F'"
,
"dummy"
,
"exec"
)
d
=
{}
exec
(
c
,
d
)
self
.
assertEqual
(
d
[
'a'
],
d
[
'b'
])
self
.
assertEqual
(
len
(
d
[
'a'
]),
len
(
d
[
'b'
]))
self
.
assertEqual
(
ascii
(
d
[
'a'
]),
ascii
(
d
[
'b'
]))
def
test_issue7820
(
self
):
# Ensure that check_bom() restores all bytes in the right order if
# check_bom() fails in pydebug mode: a buffer starts with the first
# byte of a valid BOM, but next bytes are different
# one byte in common with the UTF-16-LE BOM
self
.
assertRaises
(
SyntaxError
,
eval
,
b'
\
xff
\
x20
'
)
# two bytes in common with the UTF-8 BOM
self
.
assertRaises
(
SyntaxError
,
eval
,
b'
\
xef
\
xbb
\
x20
'
)
def
test_error_message
(
self
):
compile
(
b'# -*- coding: iso-8859-15 -*-
\
n
'
,
'dummy'
,
'exec'
)
compile
(
b'
\
xef
\
xbb
\
xbf
\
n
'
,
'dummy'
,
'exec'
)
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: utf-8 -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'fake'
):
compile
(
b'# -*- coding: fake -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'iso-8859-15'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: iso-8859-15 -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'BOM'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: iso-8859-15 -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'fake'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: fake -*-
\
n
'
,
'dummy'
,
'exec'
)
with
self
.
assertRaisesRegexp
(
SyntaxError
,
'BOM'
):
compile
(
b'
\
xef
\
xbb
\
xbf
# -*- coding: fake -*-
\
n
'
,
'dummy'
,
'exec'
)
class
CodingTest
(
unittest
.
TestCase
):
def
test_bad_coding
(
self
):
module_name
=
'bad_coding'
self
.
verify_bad_module
(
module_name
)
...
...
@@ -58,8 +130,5 @@ class CodingTest(unittest.TestCase):
self
.
assertTrue
(
c
.
exception
.
args
[
0
].
startswith
(
expected
))
def
test_main
():
test
.
support
.
run_unittest
(
CodingTest
)
if
__name__
==
"__main__"
:
test_
main
()
unittest
.
main
()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment