Issue #1573, second attempt:

"def f(*, **kw)" now raises a SyntaxError.
This commit is contained in:
Amaury Forgeot d'Arc 2007-12-09 21:49:48 +00:00
parent 3279b5df3c
commit 40d3a67a19
3 changed files with 9 additions and 13 deletions

View file

@ -48,6 +48,7 @@ class KeywordOnlyArgTestCase(unittest.TestCase):
self.assertRaisesSyntaxError("def f(p1, *, p1=100):\n pass\n")
self.assertRaisesSyntaxError("def f(p1, *k1, k1=100):\n pass\n")
self.assertRaisesSyntaxError("def f(p1, *, k1, k1=100):\n pass\n")
self.assertRaisesSyntaxError("def f(p1, *, **k1):\n pass\n")
self.assertRaisesSyntaxError("def f(p1, *, k1, **k1):\n pass\n")
self.assertRaisesSyntaxError("def f(p1, *, None, **k1):\n pass\n")
self.assertRaisesSyntaxError("def f(p, *, (k1, k2), **kw):\n pass\n")
@ -144,13 +145,6 @@ class KeywordOnlyArgTestCase(unittest.TestCase):
except TypeError:
pass
def test_doublestar_only(self):
def f(*, **kw):
return kw
self.assertEqual(f(), {})
self.assertEqual(f(k1=1, k2=2), {'k1' : 1, 'k2' : 2})
def test_kwonly_methods(self):
class Example:
def f(self, *, k1=1, k2=2):