ensure deprecation warning from assertDictContainsSubset points at actual test code (#26497)
diff --git a/Lib/unittest/case.py b/Lib/unittest/case.py
index 607c7ae..61003d0 100644
--- a/Lib/unittest/case.py
+++ b/Lib/unittest/case.py
@@ -1146,7 +1146,8 @@ def assertDictEqual(self, d1, d2, msg=None):
def assertDictContainsSubset(self, subset, dictionary, msg=None):
"""Checks whether dictionary is a superset of subset."""
warnings.warn('assertDictContainsSubset is deprecated',
- DeprecationWarning)
+ DeprecationWarning,
+ stacklevel=2)
missing = []
mismatched = []
for key, value in subset.items():
diff --git a/Lib/unittest/test/test_case.py b/Lib/unittest/test/test_case.py
index 3533485..442651e 100644
--- a/Lib/unittest/test/test_case.py
+++ b/Lib/unittest/test/test_case.py
@@ -706,6 +706,10 @@ def testAssertDictContainsSubset(self):
with self.assertRaises(self.failureException):
self.assertDictContainsSubset({'foo': one}, {'foo': '\uFFFD'})
+ with self.assertWarns(DeprecationWarning) as warninfo:
+ self.assertDictContainsSubset({}, {})
+ self.assertEqual(warninfo.warnings[0].filename, __file__)
+
def testAssertEqual(self):
equal_pairs = [
((), ()),