diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-23 07:53:28 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-23 07:53:28 (GMT) |
commit | 0207e7699bc24d9e737ddeb0bb536ce190c1ebba (patch) | |
tree | 8359afee7779520edac8553529e036112c6f1472 /Lib | |
parent | bca06ccb3e23cc1da24d3c1d78cc8a5d6df52bdf (diff) | |
download | cpython-0207e7699bc24d9e737ddeb0bb536ce190c1ebba.zip cpython-0207e7699bc24d9e737ddeb0bb536ce190c1ebba.tar.gz cpython-0207e7699bc24d9e737ddeb0bb536ce190c1ebba.tar.bz2 |
Issue #26822: itemgetter, attrgetter and methodcaller objects no longer
silently ignore keyword arguments.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_operator.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_operator.py b/Lib/test/test_operator.py index 81a8020..0864461 100644 --- a/Lib/test/test_operator.py +++ b/Lib/test/test_operator.py @@ -371,6 +371,9 @@ class OperatorTestCase(unittest.TestCase): a.name = 'arthur' f = operator.attrgetter('name') self.assertEqual(f(a), 'arthur') + self.assertRaises(TypeError, f) + self.assertRaises(TypeError, f, a, 'dent') + self.assertRaises(TypeError, f, a, surname='dent') f = operator.attrgetter('rank') self.assertRaises(AttributeError, f, a) f = operator.attrgetter(2) @@ -414,6 +417,9 @@ class OperatorTestCase(unittest.TestCase): a = 'ABCDE' f = operator.itemgetter(2) self.assertEqual(f(a), 'C') + self.assertRaises(TypeError, f) + self.assertRaises(TypeError, f, a, 3) + self.assertRaises(TypeError, f, a, size=3) f = operator.itemgetter(10) self.assertRaises(IndexError, f, a) @@ -456,6 +462,9 @@ class OperatorTestCase(unittest.TestCase): self.assertRaises(IndexError, f, a) f = operator.methodcaller('foo', 1, 2) self.assertEqual(f(a), 3) + self.assertRaises(TypeError, f) + self.assertRaises(TypeError, f, a, 3) + self.assertRaises(TypeError, f, a, spam=3) f = operator.methodcaller('bar') self.assertEqual(f(a), 42) self.assertRaises(TypeError, f, a, a) |