summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorCody Balos <balos1@llnl.gov>2024-03-26 11:21:28 -0700
committerGitHub <noreply@github.com>2024-03-26 11:21:28 -0700
commit321ffd732b124fb1eed83ce21d2e744c7c77176f (patch)
tree57be033ddf5372db61f202e1698e6bfb199a44a1 /var
parent22922323e3d1bb382c52441ee824d07b80bfbcb1 (diff)
downloadspack-321ffd732b124fb1eed83ce21d2e744c7c77176f.tar.gz
spack-321ffd732b124fb1eed83ce21d2e744c7c77176f.tar.bz2
spack-321ffd732b124fb1eed83ce21d2e744c7c77176f.tar.xz
spack-321ffd732b124fb1eed83ce21d2e744c7c77176f.zip
axom package: add tests (#43312)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/axom/package.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/axom/package.py b/var/spack/repos/builtin/packages/axom/package.py
index 6d1efb4c94..08eb175392 100644
--- a/var/spack/repos/builtin/packages/axom/package.py
+++ b/var/spack/repos/builtin/packages/axom/package.py
@@ -3,7 +3,9 @@
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+import glob
import os
+import shutil
import socket
from os.path import join as pjoin
@@ -574,3 +576,44 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage):
'PROPERTIES LINKER_LANGUAGE CXX \n LINK_FLAGS "-fopenmp"',
"src/axom/quest/examples/CMakeLists.txt",
)
+
+ @run_after("build")
+ @on_package_attributes(run_tests=True)
+ def build_test(self):
+ with working_dir(self.build_directory):
+ print("Running Axom Unit Tests...")
+ make("test")
+
+ @run_after("install")
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ """
+ Checks the spack install of axom using axom's
+ using-with-cmake example
+ """
+
+ print("Checking Axom installation...")
+ spec = self.spec
+ install_prefix = spec.prefix
+ example_src_dir = join_path(install_prefix, "examples", "axom", "using-with-cmake")
+ example_build_dir = join_path(example_src_dir, "build")
+ print("Checking using-with-cmake example...")
+ with working_dir(example_build_dir, create=True):
+ cmake_args = ["-C ../host-config.cmake", example_src_dir]
+ cmake(*cmake_args)
+ make()
+ example = Executable("./example")
+ example()
+ print("Checking using-with-make example...")
+ example_src_dir = join_path(install_prefix, "examples", "axom", "using-with-make")
+ example_build_dir = join_path(example_src_dir, "build")
+ example_files = glob.glob(join_path(example_src_dir, "*"))
+ with working_dir(example_build_dir, create=True):
+ for example_file in example_files:
+ shutil.copy(example_file, ".")
+ make("AXOM_DIR={0}".format(install_prefix))
+ example = Executable("./example")
+ example()
+
+ def test_install(self):
+ self.check_install()