Skip to content

Commit fae1409

Browse files
committed
Install setuptools for running HPy tests.
1 parent 75c8243 commit fae1409

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

mx.graalpython/mx_graalpython.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -582,6 +582,17 @@ def run_python_unittests(python_binary, args=None, paths=None, aot_compatible=Tr
582582
return mx.run([python_binary] + args, nonZeroIsFatal=True, env=env)
583583

584584

585+
def run_hpy_unittests(python_binary, args=[]):
586+
with tempfile.TemporaryDirectory(prefix='hpy-test-site-') as d:
587+
env = os.environ.copy()
588+
prefix = str(d)
589+
env.update(PYTHONUSERBASE=prefix)
590+
mx.log("Ensure 'setuptools' is installed")
591+
mx.run([python_binary] + args + ["-m", "ginstall", "install", "--prefix=" + prefix, "setuptools"], nonZeroIsFatal=True, env=env)
592+
593+
return run_python_unittests(python_binary, args=args, paths=[_hpy_test_root()], env=env)
594+
595+
585596
def run_tagged_unittests(python_binary, env=None):
586597
if env is None:
587598
env = os.environ
@@ -635,11 +646,11 @@ def graalpython_gate_runner(args, tasks):
635646

636647
with Task('GraalPython HPy tests', tasks, tags=[GraalPythonTags.unittest_hpy]) as task:
637648
if task:
638-
run_python_unittests(python_gvm(), paths=[_hpy_test_root()])
649+
run_hpy_unittests(python_gvm())
639650

640651
with Task('GraalPython HPy sandboxed tests', tasks, tags=[GraalPythonTags.unittest_hpy_sandboxed]) as task:
641652
if task:
642-
run_python_unittests(python_gvm(["sandboxed"]), args=["--llvm.managed"], paths=[_hpy_test_root()])
653+
run_hpy_unittests(python_gvm(["sandboxed"]), args=["--llvm.managed"])
643654

644655
with Task('GraalPython Python tests', tasks, tags=[GraalPythonTags.tagged]) as task:
645656
if task:

0 commit comments

Comments
 (0)