Improve error message when mock.assert_has_calls fails (GH-8205)
This makes the assertion error message more useful, aiding debugging.
Thanks @davidair!
diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py
index 19dabdd..db1e642 100644
--- a/Lib/unittest/mock.py
+++ b/Lib/unittest/mock.py
@@ -862,7 +862,9 @@
not_found.append(kall)
if not_found:
raise AssertionError(
- '%r not all found in call list' % (tuple(not_found),)
+ '%r does not contain all of %r in its call list, '
+ 'found %r instead' % (self._mock_name or 'mock',
+ tuple(not_found), all_calls)
) from cause
diff --git a/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst b/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst
new file mode 100644
index 0000000..9d82677
--- /dev/null
+++ b/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst
@@ -0,0 +1 @@
+Improved an error message when mock assert_has_calls fails.