Skip to content

Commit

Permalink
Add counts of missing dependencies
Browse files Browse the repository at this point in the history
= changelog =
msg: [repoclosure] Print counts of missing dependencies
type: enhancement
  • Loading branch information
jcpunk authored and kontura committed Jan 11, 2022
1 parent 4c31b66 commit b1ca183
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 8 deletions.
10 changes: 8 additions & 2 deletions plugins/repoclosure.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,17 +53,23 @@ def configure(self):
repo.enable()

def run(self):
total_missing = 0
if self.opts.arches:
unresolved = self._get_unresolved(self.opts.arches)
else:
unresolved = self._get_unresolved()
for pkg in sorted(unresolved.keys()):
print("package: {} from {}".format(str(pkg), pkg.reponame))
print(" unresolved deps:")
print(" unresolved deps ({}):".format(len(unresolved[pkg])))
total_missing += len(unresolved[pkg])
for dep in unresolved[pkg]:
print(" {}".format(dep))
if len(unresolved) > 0:
msg = _("Repoclosure ended with unresolved dependencies.")
msg = _(
"Repoclosure ended with unresolved dependencies ({}) across {} packages.".format(
total_missing, len(unresolved)
)
)
raise dnf.exceptions.Error(msg)

def _get_unresolved(self, arch=None):
Expand Down
12 changes: 6 additions & 6 deletions tests/test_repoclosure.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,10 +50,10 @@ def test_check_option(self):
support.command_run(self.cmd, args)

self.assertEqual(context.exception.value,
"Repoclosure ended with unresolved dependencies.")
"Repoclosure ended with unresolved dependencies (1) across 1 packages.")

expected_out = ["package: foo-4-6.noarch from @commandline",
" unresolved deps:",
" unresolved deps (1):",
" bar = 4-6"]
self.assertEqual(stdout.getvalue()[:-1], "\n".join(expected_out))
args = ["--check", "main"]
Expand All @@ -69,10 +69,10 @@ def test_pkg_option(self):
support.command_run(self.cmd, args)

self.assertEqual(context.exception.value,
"Repoclosure ended with unresolved dependencies.")
"Repoclosure ended with unresolved dependencies (1) across 1 packages.")

expected_out = ["package: foo-4-6.noarch from @commandline",
" unresolved deps:",
" unresolved deps (1):",
" bar = 4-6"]
self.assertEqual(stdout.getvalue()[:-1], "\n".join(expected_out))
args = ["--pkg", "bar"]
Expand All @@ -89,9 +89,9 @@ def test_base(self):
support.command_run(self.cmd, args)

self.assertEqual(context.exception.value,
"Repoclosure ended with unresolved dependencies.")
"Repoclosure ended with unresolved dependencies (1) across 1 packages.")

expected_out = ["package: foo-4-6.noarch from @commandline",
" unresolved deps:",
" unresolved deps (1):",
" bar = 4-6"]
self.assertEqual(stdout.getvalue()[:-1], "\n".join(expected_out))

0 comments on commit b1ca183

Please sign in to comment.