From 1780206d9040fa27f9c83d3d953262a5349879a3 Mon Sep 17 00:00:00 2001 From: Simon Rose <simon.rose@ess.eu> Date: Fri, 19 Aug 2022 16:28:12 +0200 Subject: [PATCH] Added test to catch missing dependent versions --- tests/test_build.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/test_build.py b/tests/test_build.py index 580ceff8..a0f8b155 100644 --- a/tests/test_build.py +++ b/tests/test_build.py @@ -10,6 +10,9 @@ MODULE_VERSION = "0.0.0+0" MODULE_VERSION_NO_BUILD = "0.0.0" RE_MISSING_FILE = "No rule to make target [`']{filename}'" +RE_MISSING_VERSION = ( + "REQUIRED module [`']{module}' version [`']{version}' does not exist." +) def create_patch_file(path, desc): @@ -97,6 +100,27 @@ def test_missing_requirement(wrapper): assert 'Invalid dependency "FOO_DEP_VERSION"; pruning' in errs +def test_missing_dependent_version(wrappers): + wrapper_dep = wrappers.get() + wrapper_main = wrappers.get() + + cell_path = wrapper_main.path / "cellMods" + + rc, *_ = wrapper_dep.run_make("cellinstall", cell_path=cell_path) + assert rc == 0 + + missing_version = "not_a_real_version" + wrapper_main.add_var_to_config_module( + f"{wrapper_dep.name}_DEP_VERSION", missing_version + ) + rc, _, errs = wrapper_main.run_make("cellbuild") + assert rc == 2 + assert re.search( + RE_MISSING_VERSION.format(module=wrapper_dep.name, version=missing_version), + errs, + ) + + def test_header_install_location(wrapper): subdir = wrapper.module_dir / "db" / "subdir" subdir.mkdir(parents=True) -- GitLab