commit: fc6cace9fddfa3a2c5567e35156b2ee7ef39dce1
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 9 21:03:55 2024 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Fri Feb 9 21:08:32 2024 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=fc6cace9
AuxdbTestCase: Add missing playground cleanup
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>
lib/portage/tests/dbapi/test_auxdb.py | 67 ++++++++++++++++++++---------------
1 file changed, 38 insertions(+), 29 deletions(-)
diff --git a/lib/portage/tests/dbapi/test_auxdb.py
b/lib/portage/tests/dbapi/test_auxdb.py
index c11eed73e8..0de0123a5f 100644
--- a/lib/portage/tests/dbapi/test_auxdb.py
+++ b/lib/portage/tests/dbapi/test_auxdb.py
@@ -1,4 +1,4 @@
-# Copyright 2020-2023 Gentoo Authors
+# Copyright 2020-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
import functools
@@ -64,41 +64,50 @@ class AuxdbTestCase(TestCase):
user_config={"modules": (f"portdbapi.auxdbmodule =
{auxdbmodule}",)},
)
- portdb = playground.trees[playground.eroot]["porttree"].dbapi
- metadata_keys = ["DEFINED_PHASES", "DEPEND", "EAPI", "INHERITED"]
-
- test_func = functools.partial(
- self._run_test_mod_async, ebuilds, metadata_keys, portdb
- )
-
- results = test_func()
-
- self._compare_results(
- ebuilds, eclass_defined_phases, eclass_depend, ebuild_inherited,
results
- )
+ try:
+ portdb = playground.trees[playground.eroot]["porttree"].dbapi
+ metadata_keys = ["DEFINED_PHASES", "DEPEND", "EAPI", "INHERITED"]
- loop = asyncio._wrap_loop()
- picklable_or_fork = picklable or multiprocessing.get_start_method ==
"fork"
- if picklable_or_fork:
- results = loop.run_until_complete(
- loop.run_in_executor(ForkExecutor(), test_func)
+ test_func = functools.partial(
+ self._run_test_mod_async, ebuilds, metadata_keys, portdb
)
+ results = test_func()
+
self._compare_results(
ebuilds, eclass_defined_phases, eclass_depend,
ebuild_inherited, results
)
- auxdb = portdb.auxdb[portdb.getRepositoryPath("test_repo")]
- cpv = next(iter(ebuilds))
-
- modify_auxdb = functools.partial(self._modify_auxdb, auxdb, cpv)
-
- if multiproc and picklable_or_fork:
- loop.run_until_complete(loop.run_in_executor(ForkExecutor(),
modify_auxdb))
- else:
- modify_auxdb()
-
- self.assertEqual(auxdb[cpv]["RESTRICT"], "test")
+ loop = asyncio._wrap_loop()
+ picklable_or_fork = picklable or multiprocessing.get_start_method
== "fork"
+ if picklable_or_fork:
+ results = loop.run_until_complete(
+ loop.run_in_executor(ForkExecutor(), test_func)
+ )
+
+ self._compare_results(
+ ebuilds,
+ eclass_defined_phases,
+ eclass_depend,
+ ebuild_inherited,
+ results,
+ )
+
+ auxdb = portdb.auxdb[portdb.getRepositoryPath("test_repo")]
+ cpv = next(iter(ebuilds))
+
+ modify_auxdb = functools.partial(self._modify_auxdb, auxdb, cpv)
+
+ if multiproc and picklable_or_fork:
+ loop.run_until_complete(
+ loop.run_in_executor(ForkExecutor(), modify_auxdb)
+ )
+ else:
+ modify_auxdb()
+
+ self.assertEqual(auxdb[cpv]["RESTRICT"], "test")
+ finally:
+ playground.cleanup()
def _compare_results(
self, ebuilds, eclass_defined_phases, eclass_depend, ebuild_inherited,
results