diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2015-06-28 14:06:07 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2015-06-28 14:06:07 (GMT) |
commit | 101ff3541cbe5bd9549722dc53c28d6c21b9389c (patch) | |
tree | 58ae6bba18ae65ca686f8a7ea89a78b482400f5e /Lib/test/test_contextlib.py | |
parent | acac1e0e3bf564fbad2107d8f50d7e9c42e5ef22 (diff) | |
download | cpython-101ff3541cbe5bd9549722dc53c28d6c21b9389c.zip cpython-101ff3541cbe5bd9549722dc53c28d6c21b9389c.tar.gz cpython-101ff3541cbe5bd9549722dc53c28d6c21b9389c.tar.bz2 |
Issue #24336: The contextmanager decorator now works with functions with
keyword arguments called "func" and "self". Patch by Martin Panter.
Diffstat (limited to 'Lib/test/test_contextlib.py')
-rw-r--r-- | Lib/test/test_contextlib.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/test/test_contextlib.py b/Lib/test/test_contextlib.py index 39cc776..8f849ae 100644 --- a/Lib/test/test_contextlib.py +++ b/Lib/test/test_contextlib.py @@ -111,6 +111,14 @@ class ContextManagerTestCase(unittest.TestCase): baz = self._create_contextmanager_attribs()(None) self.assertEqual(baz.__doc__, "Whee!") + def test_keywords(self): + # Ensure no keyword arguments are inhibited + @contextmanager + def woohoo(self, func, args, kwds): + yield (self, func, args, kwds) + with woohoo(self=11, func=22, args=33, kwds=44) as target: + self.assertEqual(target, (11, 22, 33, 44)) + class ClosingTestCase(unittest.TestCase): |