summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>2023-05-28 00:59:21 -0700
committerGitHub <noreply@github.com>2023-05-28 09:59:21 +0200
commit8df036a5a5e0020b1f5dd3f99be9db93629c9a44 (patch)
tree8089b85000aa3e2215f92a14c5790c8671069454
parent582ebee74ce53e1d19f920a3525cdc8170f7fa99 (diff)
downloadspack-8df036a5a5e0020b1f5dd3f99be9db93629c9a44.tar.gz
spack-8df036a5a5e0020b1f5dd3f99be9db93629c9a44.tar.bz2
spack-8df036a5a5e0020b1f5dd3f99be9db93629c9a44.tar.xz
spack-8df036a5a5e0020b1f5dd3f99be9db93629c9a44.zip
tests/cmake: convert to new stand-alone test process (#37724)
-rw-r--r--var/spack/repos/builtin/packages/cmake/package.py39
1 files changed, 25 insertions, 14 deletions
diff --git a/var/spack/repos/builtin/packages/cmake/package.py b/var/spack/repos/builtin/packages/cmake/package.py
index cf640ef736..34bbd636cd 100644
--- a/var/spack/repos/builtin/packages/cmake/package.py
+++ b/var/spack/repos/builtin/packages/cmake/package.py
@@ -436,17 +436,28 @@ class Cmake(Package):
module.cmake = Executable(self.spec.prefix.bin.cmake)
module.ctest = Executable(self.spec.prefix.bin.ctest)
- def test(self):
- """Perform smoke tests on the installed package."""
- spec_vers_str = "version {0}".format(self.spec.version)
-
- for exe in ["ccmake", "cmake", "cpack", "ctest"]:
- reason = "test version of {0} is {1}".format(exe, spec_vers_str)
- self.run_test(
- exe,
- ["--version"],
- [spec_vers_str],
- installed=True,
- purpose=reason,
- skip_missing=True,
- )
+ def run_version_check(self, bin):
+ """Runs and checks output of the installed binary."""
+ exe_path = join_path(self.prefix.bin, bin)
+ if not os.path.exists(exe_path):
+ raise SkipTest(f"{exe} is not installed")
+
+ exe = which(exe_path)
+ out = exe("--version", output=str.split, error=str.split)
+ assert f"version {self.spec.version}" in out
+
+ def test_ccmake(self):
+ """check version from ccmake"""
+ self.run_version_check("ccmake")
+
+ def test_cmake(self):
+ """check version from cmake"""
+ self.run_version_check("cmake")
+
+ def test_cpack(self):
+ """check version from cpack"""
+ self.run_version_check("cpack")
+
+ def test_ctest(self):
+ """check version from ctest"""
+ self.run_version_check("ctest")