Mercurial > cpython-lru_cache-weakref
diff Lib/test/test_parser.py @ 76635:9f57d66689ca 3.2
Issue #9154: Fix parser module to understand function annotations.
| author | Mark Dickinson <mdickinson@enthought.com> |
|---|---|
| date | Sun, 29 Apr 2012 18:34:40 +0100 |
| parents | 3c9232a684ae |
| children | b7e491b9094f cee5cb877631 |
line wrap: on
line diff
--- a/Lib/test/test_parser.py Sun Apr 29 09:32:30 2012 -0700 +++ b/Lib/test/test_parser.py Sun Apr 29 18:34:40 2012 +0100 @@ -146,6 +146,27 @@ self.check_suite("@funcattrs()\n" "def f(): pass") + # keyword-only arguments + self.check_suite("def f(*, a): pass") + self.check_suite("def f(*, a = 5): pass") + self.check_suite("def f(*, a = 5, b): pass") + self.check_suite("def f(*, a, b = 5): pass") + self.check_suite("def f(*, a, b = 5, **kwds): pass") + self.check_suite("def f(*args, a): pass") + self.check_suite("def f(*args, a = 5): pass") + self.check_suite("def f(*args, a = 5, b): pass") + self.check_suite("def f(*args, a, b = 5): pass") + self.check_suite("def f(*args, a, b = 5, **kwds): pass") + + # function annotations + self.check_suite("def f(a: int): pass") + self.check_suite("def f(a: int = 5): pass") + self.check_suite("def f(*args: list): pass") + self.check_suite("def f(**kwds: dict): pass") + self.check_suite("def f(*, a: int): pass") + self.check_suite("def f(*, a: int = 5): pass") + self.check_suite("def f() -> int: pass") + def test_class_defs(self): self.check_suite("class foo():pass") self.check_suite("class foo(object):pass")
