Ver código fonte

tests: do not leak objects in object leaks checking function

If any object is leaked, QubesTestCase.cleanup_gc() raises an exception,
which have leaked objects list referenced in its traceback. This happens
after cleanup_traceback(), so isn't cleaned, causing cleanup_gc() fail
for all the further tests in the same test run.

Avoid this, by dropping list just before checking if any object is
leaked.
Marek Marczykowski-Górecki 5 anos atrás
pai
commit
5bc0baeafa
1 arquivos alterados com 2 adições e 0 exclusões
  1. 2 0
      qubes/tests/__init__.py

+ 2 - 0
qubes/tests/__init__.py

@@ -409,6 +409,8 @@ class QubesTestCase(unittest.TestCase):
             except ImportError:
                 pass
 
+        # do not keep leaked object references in locals()
+        leaked = bool(leaked)
         assert not leaked
 
     def cleanup_loop(self):