From 2d76e5e77d2be40f5635140dbbbf0b4d60f20dc1 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 10 Jan 2013 04:03:45 -0800 Subject: emerge/test_simple.py: override PATH more Override things that may be unavailable, or may have portability issues when running tests in exotic environments. --- pym/portage/package/ebuild/doebuild.py | 4 +++- pym/portage/tests/emerge/test_simple.py | 8 ++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py index 76f908ddd..e4d3ae451 100644 --- a/pym/portage/package/ebuild/doebuild.py +++ b/pym/portage/package/ebuild/doebuild.py @@ -160,13 +160,15 @@ def _doebuild_path(settings, eapi=None): eprefix = settings["EPREFIX"] prerootpath = [x for x in settings.get("PREROOTPATH", "").split(":") if x] rootpath = [x for x in settings.get("ROOTPATH", "").split(":") if x] + overrides = [x for x in settings.get( + "__PORTAGE_TEST_PATH_OVERRIDE", "").split(":") if x] prefixes = [] if eprefix: prefixes.append(eprefix) prefixes.append("/") - path = [] + path = overrides if eprefix and uid != 0 and "fakeroot" not in settings.features: path.append(os.path.join(portage_bin_path, diff --git a/pym/portage/tests/emerge/test_simple.py b/pym/portage/tests/emerge/test_simple.py index a22e2b37d..282a045ed 100644 --- a/pym/portage/tests/emerge/test_simple.py +++ b/pym/portage/tests/emerge/test_simple.py @@ -1,4 +1,4 @@ -# Copyright 2011-2012 Gentoo Foundation +# Copyright 2011-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 import subprocess @@ -302,6 +302,7 @@ pkg_preinst() { "PORTAGE_PYTHON" : portage_python, "PORTAGE_TMPDIR" : portage_tmpdir, "PYTHONPATH" : pythonpath, + "__PORTAGE_TEST_PATH_OVERRIDE" : fake_bin, } if "__PORTAGE_TEST_HARDLINK_LOCKS" in os.environ: @@ -312,7 +313,10 @@ pkg_preinst() { dirs = [cachedir, cachedir_pregen, distdir, fake_bin, portage_tmpdir, updates_dir, user_config_dir, var_cache_edb] - true_symlinks = ["chown", "chgrp"] + # Override things that may be unavailable, or may have portability + # issues when running tests in exotic environments. + # prepstrip - bug #447810 (bash read builtin EINTR problem) + true_symlinks = ["find", "gawk", "prepstrip", "sed", "scanelf"] true_binary = find_binary("true") self.assertEqual(true_binary is None, False, "true command not found") -- cgit v1.2.3-1-g7c22