Skip to content
Snippets Groups Projects
Commit af249d3c authored by Todd Gamblin's avatar Todd Gamblin
Browse files

package_sanity: add a test to enforce no nonexisting dependencies in builtin

We shouldn't allow packages to have missing dependencies in the mainline.

- [x] Add a test to enforce this.
parent 531f370e
No related branches found
No related tags found
No related merge requests found
......@@ -10,6 +10,7 @@
import pytest
import spack.fetch_strategy
import spack.package
import spack.paths
import spack.repo
import spack.util.executable as executable
......@@ -187,3 +188,18 @@ def test_prs_update_old_api():
assert not failing, msg.format(
len(failing), ','.join(failing)
)
def test_all_dependencies_exist():
"""Make sure no packages have nonexisting dependencies."""
missing = {}
pkgs = [pkg for pkg in spack.repo.path.all_package_names()]
spack.package.possible_dependencies(
*pkgs, transitive=True, missing=missing)
lines = [
"%s: [%s]" % (name, ", ".join(deps)) for name, deps in missing.items()
]
assert not missing, "These packages have missing dependencies:\n" + (
"\n".join(lines)
)
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