From: Gregory P. Smith Date: Thu, 6 Oct 2016 21:31:23 +0000 (-0700) Subject: Fixes issue28380: unittest.mock Mock autospec functions now properly support X-Git-Tag: v3.6.0b2~37 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ac5084b6c760ff5e6469854373fe6c3c81804f87;p=thirdparty%2FPython%2Fcpython.git Fixes issue28380: unittest.mock Mock autospec functions now properly support assert_called, assert_not_called, and assert_called_once. --- diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py index eaa9c3d5850e..f1349198880c 100644 --- a/Lib/unittest/mock.py +++ b/Lib/unittest/mock.py @@ -193,6 +193,12 @@ def _setup_func(funcopy, mock): def assert_called_with(*args, **kwargs): return mock.assert_called_with(*args, **kwargs) + def assert_called(*args, **kwargs): + return mock.assert_called(*args, **kwargs) + def assert_not_called(*args, **kwargs): + return mock.assert_not_called(*args, **kwargs) + def assert_called_once(*args, **kwargs): + return mock.assert_called_once(*args, **kwargs) def assert_called_once_with(*args, **kwargs): return mock.assert_called_once_with(*args, **kwargs) def assert_has_calls(*args, **kwargs): @@ -223,6 +229,9 @@ def _setup_func(funcopy, mock): funcopy.assert_has_calls = assert_has_calls funcopy.assert_any_call = assert_any_call funcopy.reset_mock = reset_mock + funcopy.assert_called = assert_called + funcopy.assert_not_called = assert_not_called + funcopy.assert_called_once = assert_called_once mock._mock_delegate = funcopy diff --git a/Lib/unittest/test/testmock/testpatch.py b/Lib/unittest/test/testmock/testpatch.py index 2e0c08f35f52..fe4ecefd4405 100644 --- a/Lib/unittest/test/testmock/testpatch.py +++ b/Lib/unittest/test/testmock/testpatch.py @@ -969,8 +969,14 @@ class PatchTest(unittest.TestCase): def test_autospec_function(self): @patch('%s.function' % __name__, autospec=True) def test(mock): + function.assert_not_called() + self.assertRaises(AssertionError, function.assert_called) + self.assertRaises(AssertionError, function.assert_called_once) function(1) + self.assertRaises(AssertionError, function.assert_not_called) function.assert_called_with(1) + function.assert_called() + function.assert_called_once() function(2, 3) function.assert_called_with(2, 3) diff --git a/Misc/NEWS b/Misc/NEWS index 5c5583ad85ac..b03cc817f719 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -53,6 +53,9 @@ Core and Builtins Library ------- +- Issue #28380: unittest.mock Mock autospec functions now properly support + assert_called, assert_not_called, and assert_called_once. + - Issue #27181 remove statistics.geometric_mean and defer until 3.7. - Issue #28229: lzma module now supports pathlib.