1
0
Fork 0
mirror of synced 2024-11-04 17:08:56 -05:00
yadm/test/test_unit_bootstrap_available.py
2023-07-12 09:20:00 -05:00

33 lines
975 B
Python

"""Unit tests: bootstrap_available"""
def test_bootstrap_missing(runner, paths):
"""Test result of bootstrap_available, when bootstrap missing"""
run_test(runner, paths, False)
def test_bootstrap_no_exec(runner, paths):
"""Test result of bootstrap_available, when bootstrap not executable"""
paths.bootstrap.write("")
paths.bootstrap.chmod(0o644)
run_test(runner, paths, False)
def test_bootstrap_exec(runner, paths):
"""Test result of bootstrap_available, when bootstrap executable"""
paths.bootstrap.write("")
paths.bootstrap.chmod(0o775)
run_test(runner, paths, True)
def run_test(runner, paths, success):
"""Run bootstrap_available, and test result"""
script = f"""
YADM_TEST=1 source {paths.pgm}
YADM_BOOTSTRAP='{paths.bootstrap}'
bootstrap_available
"""
run = runner(command=["bash"], inp=script)
assert run.success == success
assert run.err == ""
assert run.out == ""