Last change
on this file was 391, checked in by dmik, 11 years ago |
python: Merge vendor 2.7.6 to trunk.
|
-
Property svn:eol-style
set to
native
|
File size:
938 bytes
|
Line | |
---|
1 | """
|
---|
2 | Test the internal getargs.c implementation
|
---|
3 |
|
---|
4 | PyArg_ParseTuple() is defined here.
|
---|
5 |
|
---|
6 | The test here is not intended to test all of the module, just the
|
---|
7 | single case that failed between 2.1 and 2.2a2.
|
---|
8 | """
|
---|
9 |
|
---|
10 | # marshal.loads() uses PyArg_ParseTuple(args, "s#:loads")
|
---|
11 | # The s code will cause a Unicode conversion to occur. This test
|
---|
12 | # verify that the error is propagated properly from the C code back to
|
---|
13 | # Python.
|
---|
14 |
|
---|
15 | import marshal
|
---|
16 | import unittest
|
---|
17 | from test import test_support
|
---|
18 |
|
---|
19 | class GetArgsTest(unittest.TestCase):
|
---|
20 | # If the encoding succeeds using the current default encoding,
|
---|
21 | # this test will fail because it does not test the right part of the
|
---|
22 | # PyArg_ParseTuple() implementation.
|
---|
23 | def test_with_marshal(self):
|
---|
24 | arg = unicode(r'\222', 'unicode-escape')
|
---|
25 | self.assertRaises(UnicodeError, marshal.loads, arg)
|
---|
26 |
|
---|
27 | def test_main():
|
---|
28 | test_support.run_unittest(GetArgsTest)
|
---|
29 |
|
---|
30 | if __name__ == '__main__':
|
---|
31 | test_main()
|
---|
Note:
See
TracBrowser
for help on using the repository browser.