summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>2023-06-30 13:34:42 -0700
committerGitHub <noreply@github.com>2023-06-30 15:34:42 -0500
commit131acbdaccdb4b0ba8de98d179e10e33ff184764 (patch)
tree332420d0c95411a4a5e43ecef0ae8ef3bf16a903
parent86d2399c760136f4c3b54003e4fdd13906b82168 (diff)
downloadspack-131acbdaccdb4b0ba8de98d179e10e33ff184764.tar.gz
spack-131acbdaccdb4b0ba8de98d179e10e33ff184764.tar.bz2
spack-131acbdaccdb4b0ba8de98d179e10e33ff184764.tar.xz
spack-131acbdaccdb4b0ba8de98d179e10e33ff184764.zip
tests/slepc: convert to new stand-alone test process (#38653)
-rw-r--r--var/spack/repos/builtin/packages/slepc/package.py74
1 files changed, 31 insertions, 43 deletions
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