From 0c31ab87c9940465a529a92b9a9fcb6194b7619d Mon Sep 17 00:00:00 2001 From: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com> Date: Tue, 26 Apr 2022 17:40:05 -0700 Subject: Feature: Allow re-use of run_test() in install_time_test_callbacks (#26594) Allow re-use of run_test() in install_time_test_callbacks Co-authored-by: Greg Becker --- .../packages/test-build-callbacks/package.py | 31 ++++++++++++++++++++++ .../packages/test-install-callbacks/package.py | 27 +++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 var/spack/repos/builtin.mock/packages/test-build-callbacks/package.py create mode 100644 var/spack/repos/builtin.mock/packages/test-install-callbacks/package.py (limited to 'var') diff --git a/var/spack/repos/builtin.mock/packages/test-build-callbacks/package.py b/var/spack/repos/builtin.mock/packages/test-build-callbacks/package.py new file mode 100644 index 0000000000..1794649215 --- /dev/null +++ b/var/spack/repos/builtin.mock/packages/test-build-callbacks/package.py @@ -0,0 +1,31 @@ +# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack import * +from spack.package import run_after + + +class TestBuildCallbacks(Package): + """This package illustrates build callback test failure.""" + + homepage = "http://www.example.com/test-build-callbacks" + url = "http://www.test-failure.test/test-build-callbacks-1.0.tar.gz" + + version('1.0', '0123456789abcdef0123456789abcdef') + + phases = ['build', 'install'] + # set to undefined method + build_time_test_callbacks = ['undefined-build-test'] + run_after('build')(Package._run_default_build_time_test_callbacks) + + def build(self, spec, prefix): + pass + + def install(self, spec, prefix): + mkdirp(prefix.bin) + + def test(self): + print('test: running test-build-callbacks') + print('PASSED') diff --git a/var/spack/repos/builtin.mock/packages/test-install-callbacks/package.py b/var/spack/repos/builtin.mock/packages/test-install-callbacks/package.py new file mode 100644 index 0000000000..75e851f24c --- /dev/null +++ b/var/spack/repos/builtin.mock/packages/test-install-callbacks/package.py @@ -0,0 +1,27 @@ +# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack import * +from spack.package import run_after + + +class TestInstallCallbacks(Package): + """This package illustrates install callback test failure.""" + + homepage = "http://www.example.com/test-install-callbacks" + url = "http://www.test-failure.test/test-install-callbacks-1.0.tar.gz" + + version('1.0', '0123456789abcdef0123456789abcdef') + + # Include an undefined callback method + install_time_test_callbacks = ['undefined-install-test', 'test'] + run_after('install')(Package._run_default_install_time_test_callbacks) + + def install(self, spec, prefix): + mkdirp(prefix.bin) + + def test(self): + print('test: test-install-callbacks') + print('PASSED') -- cgit v1.2.3-70-g09d2