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 <becker33@llnl.gov>
This commit is contained in:
@@ -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')
|
@@ -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')
|
Reference in New Issue
Block a user