From 04d1c81d3dc3af59749ca3555a9fd45f4a9fcb78 Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Tue, 27 Jul 2021 22:03:38 -0700 Subject: [PATCH] bugfix: fix extra dependency annotations These were being displayed regardless of the dep type and state of DepDesc. This is fixed with this commit. Signed-off-by: Kevin Morris --- aurweb/packages/util.py | 2 ++ templates/partials/packages/package_metadata.html | 6 ++++-- test/test_packages_routes.py | 11 ++++++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/aurweb/packages/util.py b/aurweb/packages/util.py index 6681d479..698ae1af 100644 --- a/aurweb/packages/util.py +++ b/aurweb/packages/util.py @@ -46,6 +46,8 @@ def dep_extra(dep: PackageDependency) -> str: @register_filter("dep_extra_desc") def dep_extra_desc(dep: PackageDependency) -> str: extra = dep_extra(dep) + if not dep.DepDesc: + return extra return extra + f" – {dep.DepDesc}" diff --git a/templates/partials/packages/package_metadata.html b/templates/partials/packages/package_metadata.html index 767e25a9..7ec95699 100644 --- a/templates/partials/packages/package_metadata.html +++ b/templates/partials/packages/package_metadata.html @@ -16,9 +16,11 @@ {% endif %} {{ dep.Package | provides_list(dep.DepName) | safe }} - {% set extra = dep | dep_extra %} - {% if extra %} + + {% if dep.DepTypeID == 4 %} {{ dep | dep_extra_desc }} + {% else %} + {{ dep | dep_extra }} {% endif %} {% endfor %} diff --git a/test/test_packages_routes.py b/test/test_packages_routes.py index 44ef7fcd..82fbba40 100644 --- a/test/test_packages_routes.py +++ b/test/test_packages_routes.py @@ -247,7 +247,15 @@ def test_package_dependencies(client: TestClient, maintainer: User, dep_type_name="optdepends", autocommit=False) - broken_dep = create_package_dep(package, "test-dep-5", + # Heh. Another optdepends to test one with a description. + opt_desc_dep_pkg = create_package("test-dep-5", maintainer, + autocommit=False) + opt_desc_dep = create_package_dep(package, opt_desc_dep_pkg.Name, + dep_type_name="optdepends", + autocommit=False) + opt_desc_dep.DepDesc = "Test description." + + broken_dep = create_package_dep(package, "test-dep-6", dep_type_name="depends", autocommit=False) @@ -273,6 +281,7 @@ def test_package_dependencies(client: TestClient, maintainer: User, make_dep.DepName, check_dep.DepName, opt_dep.DepName, + opt_desc_dep.DepName, official_dep.DepName ] pkgdeps = root.findall('.//ul[@id="pkgdepslist"]/li/a')