Add ArborX smoke tests (#22356)
This commit is contained in:
parent
020c60649e
commit
245d67ed5c
1 changed files with 39 additions and 0 deletions
|
@ -69,3 +69,42 @@ def cmake_args(self):
|
|||
'-DCMAKE_CXX_COMPILER=%s' % spec["kokkos"].kokkos_cxx)
|
||||
|
||||
return options
|
||||
|
||||
examples_src_dir = "examples"
|
||||
|
||||
@run_after('install')
|
||||
def setup_build_tests(self):
|
||||
"""Copy the example source files after the package is installed to an
|
||||
install test subdirectory for use during `spack test run`."""
|
||||
self.cache_extra_test_sources([self.examples_src_dir])
|
||||
|
||||
def build_tests(self):
|
||||
"""Build test."""
|
||||
cmake_build_path = join_path(self.install_test_root,
|
||||
self.examples_src_dir, "build")
|
||||
mkdirp(cmake_build_path)
|
||||
cmake_prefix_path = "-DCMAKE_PREFIX_PATH={0}".format(self.spec['arborx'].prefix)
|
||||
|
||||
# We don't need to append the path to Kokkos to CMAKE_PREFIX_PATH
|
||||
# since a hint is already hardcoded inside the CMake ArborX configuration.
|
||||
# Omitting it here allows us to avoid to distinguish between Kokkos
|
||||
# being installed as a standalone or as part of Trilinos.
|
||||
if '+mpi' in self.spec:
|
||||
cmake_prefix_path += ";{0}".format(self.spec['mpi'].prefix)
|
||||
with working_dir(cmake_build_path):
|
||||
cmake_args = ["..",
|
||||
cmake_prefix_path,
|
||||
"-DCMAKE_CXX_COMPILER={0}".format(self.compiler.cxx)]
|
||||
cmake(*cmake_args)
|
||||
make()
|
||||
|
||||
def run_tests(self):
|
||||
"""Run test."""
|
||||
reason = 'Checking ability to execute.'
|
||||
run_path = join_path(self.install_test_root, self.examples_src_dir, 'build')
|
||||
with working_dir(run_path):
|
||||
self.run_test('ctest', ['-V'], [], installed=False, purpose=reason)
|
||||
|
||||
def test(self):
|
||||
self.build_tests()
|
||||
self.run_tests()
|
||||
|
|
Loading…
Reference in a new issue