New submission from Marco Buccini <marcu...@gmail.com>: Suppose that you have an instance method that takes 2 arguments: one is required, while the other is a keyword argument.
If you call that method without passing the required argument, but instead you only set the keyword argument, then you will get a TypeError exception, claiming this ... -> TypeError: 'method' takes at least 2 arguments (2 given) (I am referring to this particular method: http://www.voidspace.org.uk/python/mock/mock.html#mock.Mock.mock_add_spec) @patch('xyz.subprocess.Popen') def test_xyz(self, mocked_popen): mocked_popen.mock_add_spec(spec_set=True) I think the right error message should be different, in particular should be this: -> TypeError: 'method' takes at least 2 arguments (1 given) ---------- components: Interpreter Core messages: 163072 nosy: markon priority: normal severity: normal status: open title: "TypeError" can give a misleading message type: behavior versions: Python 2.7 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue15098> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com