]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
CVE-2020-25722 pytest: Raise an error when adding a dynamic test that would overwrite...
authorJoseph Sutton <josephsutton@catalyst.net.nz>
Wed, 27 Oct 2021 06:18:20 +0000 (19:18 +1300)
committerJule Anger <janger@samba.org>
Tue, 9 Nov 2021 19:45:33 +0000 (19:45 +0000)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14753

Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/tests/__init__.py

index ab366c7ed30ebe497acf598738a81d43a443d4fa..6d4993ac255ed6efa79c958597620a61bb5eb1d3 100644 (file)
@@ -99,7 +99,10 @@ class TestCase(unittest.TestCase):
         def fn(self):
             getattr(self, "_%s_with_args" % fnname)(*args)
         fn.__doc__ = doc
-        setattr(cls, "%s_%s" % (fnname, suffix), fn)
+        attr = "%s_%s" % (fnname, suffix)
+        if hasattr(cls, attr):
+            raise RuntimeError(f"Dynamic test {attr} already exists!")
+        setattr(cls, attr, fn)
 
     @classmethod
     def setUpDynamicTestCases(cls):