From 131acbdaccdb4b0ba8de98d179e10e33ff184764 Mon Sep 17 00:00:00 2001 From: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com> Date: Fri, 30 Jun 2023 13:34:42 -0700 Subject: tests/slepc: convert to new stand-alone test process (#38653) --- var/spack/repos/builtin/packages/slepc/package.py | 74 ++++++++++------------- 1 file changed, 31 insertions(+), 43 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/slepc/package.py b/var/spack/repos/builtin/packages/slepc/package.py index 141ab6e5d5..597688cf68 100644 --- a/var/spack/repos/builtin/packages/slepc/package.py +++ b/var/spack/repos/builtin/packages/slepc/package.py @@ -183,48 +183,36 @@ class Slepc(Package, CudaPackage, ROCmPackage): join_path(self.stage.source_path, "make.log"), ] - def run_hello_test(self): - """Run stand alone test: hello""" + def test_hello(self): + """build and run hello""" test_dir = self.test_suite.current_test_data_dir - if not os.path.exists(test_dir): - print("Skipping slepc test") - return - - exe = "hello" - cc_exe = os.environ["CC"] - - self.run_test( - exe=cc_exe, - options=[ - "-I{0}".format(self.prefix.include), - "-L", - self.prefix.lib, - "-l", - "slepc", - "-L", - self.spec["petsc"].prefix.lib, - "-l", - "petsc", - "-L", - self.spec["mpi"].prefix.lib, - "-l", - "mpi", - "-o", - exe, - join_path(test_dir, "hello.c"), - ], - purpose="test: compile {0} example".format(exe), - work_dir=test_dir, - ) - - self.run_test( - exe=exe, - options=[], - expected=["Hello world"], - purpose="test: run {0} example".format(exe), - work_dir=test_dir, - ) - - def test(self): - self.run_hello_test() + raise SkipTest(f"Test data directory ({test_dir}) is missing") + + test_exe = "hello" + options = [ + f"-I{self.prefix.include}", + "-L", + self.prefix.lib, + "-l", + "slepc", + "-L", + self.spec["petsc"].prefix.lib, + "-l", + "petsc", + "-L", + self.spec["mpi"].prefix.lib, + "-l", + "mpi", + "-o", + test_exe, + join_path(test_dir, f"{test_exe}.c"), + ] + + cc = which(os.environ["CC"]) + with working_dir(test_dir): + cc(*options) + + hello = which(test_exe) + out = hello(output=str.split, error=str.split) + assert "Hello world" in out -- cgit v1.2.3-60-g2f50