[Python-checkins] gh-92886: [clinic.py] raise exception on invalid input instead of assertion (GH-98051)

miss-islington webhook-mailer at python.org
Fri Oct 7 17:41:44 EDT 2022


https://github.com/python/cpython/commit/34e6f3567e3519e0e8cdb7bbc4b68b9ab40493c8
commit: 34e6f3567e3519e0e8cdb7bbc4b68b9ab40493c8
branch: main
author: Irit Katriel <1055913+iritkatriel at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-10-07T14:41:35-07:00
summary:

gh-92886: [clinic.py] raise exception on invalid input instead of assertion (GH-98051)



Tests should pass with -O (assertions off).

Automerge-Triggered-By: GH:iritkatriel

files:
M Lib/test/test_clinic.py
M Tools/clinic/clinic.py

diff --git a/Lib/test/test_clinic.py b/Lib/test/test_clinic.py
index 4aa9691a4829..8ab40c694f71 100644
--- a/Lib/test/test_clinic.py
+++ b/Lib/test/test_clinic.py
@@ -153,7 +153,7 @@ def test_right_only(self):
     def test_have_left_options_but_required_is_empty(self):
         def fn():
             clinic.permute_optional_groups(['a'], [], [])
-        self.assertRaises(AssertionError, fn)
+        self.assertRaises(ValueError, fn)
 
 
 class ClinicLinearFormatTest(TestCase):
diff --git a/Tools/clinic/clinic.py b/Tools/clinic/clinic.py
index 30a676328706..a8687e3470a1 100755
--- a/Tools/clinic/clinic.py
+++ b/Tools/clinic/clinic.py
@@ -495,7 +495,8 @@ def permute_optional_groups(left, required, right):
     result = []
 
     if not required:
-        assert not left
+        if left:
+            raise ValueError("required is empty but left is not")
 
     accumulator = []
     counts = set()



More information about the Python-checkins mailing list