Skip to content
Snippets Groups Projects
Commit 1f71c033 authored by Simon Rose's avatar Simon Rose
Browse files

Two more tests

* One test to catch invalid dependencies
* One test to catch architecture-dependent dependencies. Note that this itself does depend on
  the underlying architecture, which probably should be improved. But at the moment we only
  build for linux-based architectures, so this should be ok.
parent 20ad7ada
No related branches found
No related tags found
1 merge request!83E3-752: Fetch dependencies recursively
Pipeline #109881 passed
...@@ -190,6 +190,54 @@ def test_automated_dependency(wrappers): ...@@ -190,6 +190,54 @@ def test_automated_dependency(wrappers):
assert f"{wrapper_b.name} {module_version}" == contents[1] assert f"{wrapper_b.name} {module_version}" == contents[1]
def test_missing_dependency(wrappers):
wrapper_a = wrappers.get()
wrapper_b = wrappers.get()
wrapper_a.add_var_to_config_module(f"{wrapper_b.name}_DEP_VERSION", "bar")
rc, _, errs = wrapper_a.run_make("build")
assert rc == 0
assert f'Invalid dependency "{wrapper_b.name}_DEP_VERSION"; pruning' in errs
def test_architecture_dependent_dependency(wrappers):
wrapper_a = wrappers.get()
wrapper_b = wrappers.get()
wrapper_c = wrappers.get()
cell_path = wrapper_a.path / "cellMods"
module_version = "0.0.0+0"
wrapper_a.add_var_to_config_module(
f"{wrapper_b.name}_DEP_VERSION_linux", module_version
)
wrapper_a.add_var_to_config_module(
f"{wrapper_c.name}_DEP_VERSION_not_an_arch", module_version
)
rc, *_ = wrapper_c.run_make(
"cellinstall", module_version=module_version, cell_path=cell_path
)
assert rc == 0
rc, *_ = wrapper_b.run_make(
"cellinstall", module_version=module_version, cell_path=cell_path
)
assert rc == 0
rc, *_ = wrapper_a.run_make(
"cellinstall", module_version=module_version, cell_path=cell_path
)
assert rc == 0
rc, outs, _ = run_ioc_get_output(
wrapper_a.name, module_version, wrapper_a.path / "cellMods"
)
assert rc == 0
assert f"Loaded {wrapper_b.name} version {module_version}" in outs
assert f"Loaded {wrapper_c.name} version {module_version}" not in outs
def test_recursive_header_include(wrappers): def test_recursive_header_include(wrappers):
wrapper_a = wrappers.get() wrapper_a = wrappers.get()
wrapper_b = wrappers.get() wrapper_b = wrappers.get()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment