mirror of
https://github.com/python/cpython.git
synced 2025-07-28 21:55:21 +00:00
Issue 6292: for the moment at least, the test suite passes if run
with -OO. Tests requiring docstrings are skipped. Patch by Brian Curtin, thanks to Matias Torchinsky for helping review and improve the patch.
This commit is contained in:
parent
87bcb243ac
commit
f28fd24c36
19 changed files with 194 additions and 41 deletions
|
@ -1,4 +1,5 @@
|
|||
import functools
|
||||
import sys
|
||||
import unittest
|
||||
from test import test_support
|
||||
from weakref import proxy
|
||||
|
@ -179,7 +180,7 @@ class TestUpdateWrapper(unittest.TestCase):
|
|||
for key in wrapped_attr:
|
||||
self.assertTrue(wrapped_attr[key] is wrapper_attr[key])
|
||||
|
||||
def test_default_update(self):
|
||||
def _default_update(self):
|
||||
def f():
|
||||
"""This is a test"""
|
||||
pass
|
||||
|
@ -187,11 +188,20 @@ class TestUpdateWrapper(unittest.TestCase):
|
|||
def wrapper():
|
||||
pass
|
||||
functools.update_wrapper(wrapper, f)
|
||||
return wrapper, f
|
||||
|
||||
def test_default_update(self):
|
||||
wrapper, f = self._default_update()
|
||||
self.check_wrapper(wrapper, f)
|
||||
self.assertEqual(wrapper.__name__, 'f')
|
||||
self.assertEqual(wrapper.__doc__, 'This is a test')
|
||||
self.assertEqual(wrapper.attr, 'This is also a test')
|
||||
|
||||
@unittest.skipIf(sys.flags.optimize >= 2,
|
||||
"Docstrings are omitted with -O2 and above")
|
||||
def test_default_update_doc(self):
|
||||
wrapper, f = self._default_update()
|
||||
self.assertEqual(wrapper.__doc__, 'This is a test')
|
||||
|
||||
def test_no_update(self):
|
||||
def f():
|
||||
"""This is a test"""
|
||||
|
@ -232,7 +242,7 @@ class TestUpdateWrapper(unittest.TestCase):
|
|||
|
||||
class TestWraps(TestUpdateWrapper):
|
||||
|
||||
def test_default_update(self):
|
||||
def _default_update(self):
|
||||
def f():
|
||||
"""This is a test"""
|
||||
pass
|
||||
|
@ -241,10 +251,19 @@ class TestWraps(TestUpdateWrapper):
|
|||
def wrapper():
|
||||
pass
|
||||
self.check_wrapper(wrapper, f)
|
||||
return wrapper
|
||||
|
||||
def test_default_update(self):
|
||||
wrapper = self._default_update()
|
||||
self.assertEqual(wrapper.__name__, 'f')
|
||||
self.assertEqual(wrapper.__doc__, 'This is a test')
|
||||
self.assertEqual(wrapper.attr, 'This is also a test')
|
||||
|
||||
@unittest.skipIf(not sys.flags.optimize <= 1,
|
||||
"Docstrings are omitted with -O2 and above")
|
||||
def test_default_update_doc(self):
|
||||
wrapper = self._default_update()
|
||||
self.assertEqual(wrapper.__doc__, 'This is a test')
|
||||
|
||||
def test_no_update(self):
|
||||
def f():
|
||||
"""This is a test"""
|
||||
|
@ -323,7 +342,6 @@ class TestReduce(unittest.TestCase):
|
|||
|
||||
|
||||
def test_main(verbose=None):
|
||||
import sys
|
||||
test_classes = (
|
||||
TestPartial,
|
||||
TestPartialSubclass,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue