summaryrefslogtreecommitdiff
path: root/Lib/unittest/test/test_case.py
diff options
context:
space:
mode:
authorandrei kulakov <andrei.avk@gmail.com>2021-08-22 14:32:45 -0400
committerGitHub <noreply@github.com>2021-08-22 21:32:45 +0300
commitb1db308c6114bb18c06656c94c0ffa73ba954977 (patch)
treec69da403a5693c670028754c8a8d3af69e9e24b6 /Lib/unittest/test/test_case.py
parent6dd1cdb0cfd6427925863e0ff7ad3fde0d824a8b (diff)
downloadcpython-git-b1db308c6114bb18c06656c94c0ffa73ba954977.tar.gz
bpo-41322: Add unit tests for deprecation of test return values (GH-27846)
Also fix the traceback of warnings.
Diffstat (limited to 'Lib/unittest/test/test_case.py')
-rw-r--r--Lib/unittest/test/test_case.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Lib/unittest/test/test_case.py b/Lib/unittest/test/test_case.py
index b8aca92a8e..f3cabe44d1 100644
--- a/Lib/unittest/test/test_case.py
+++ b/Lib/unittest/test/test_case.py
@@ -306,6 +306,26 @@ class Test_TestCase(unittest.TestCase, TestEquality, TestHashing):
Foo('test').run()
+ def test_deprecation_of_return_val_from_test(self):
+ # Issue 41322 - deprecate return of value!=None from a test
+ class Foo(unittest.TestCase):
+ def test1(self):
+ return 1
+ def test2(self):
+ yield 1
+
+ with self.assertWarns(DeprecationWarning) as w:
+ Foo('test1').run()
+ self.assertIn('It is deprecated to return a value!=None', str(w.warnings[0].message))
+ self.assertIn('test1', str(w.warnings[0].message))
+ self.assertEqual(w.warnings[0].filename, __file__)
+
+ with self.assertWarns(DeprecationWarning) as w:
+ Foo('test2').run()
+ self.assertIn('It is deprecated to return a value!=None', str(w.warnings[0].message))
+ self.assertIn('test2', str(w.warnings[0].message))
+ self.assertEqual(w.warnings[0].filename, __file__)
+
def _check_call_order__subtests(self, result, events, expected_events):
class Foo(Test.LoggingTestCase):
def test(self):