Skip to content

Commit 43592e9

Browse files
committed
Fix and improve unit test #1742
Signed-off-by: tdruez <[email protected]>
1 parent 07117ec commit 43592e9

File tree

2 files changed

+32
-5
lines changed

2 files changed

+32
-5
lines changed

CHANGELOG.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ v35.2.0 (unreleased)
2020

2121
- Enhance the dependency tree view in a more dynamic rendering.
2222
Vulnerabilities and compliance alert are displayed along the dependency entries.
23+
https://github.com/aboutcode-org/scancode.io/pull/1742
2324

2425
v35.1.0 (2025-07-02)
2526
--------------------

scanpipe/tests/test_views.py

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1297,14 +1297,16 @@ def test_scanpipe_views_license_details_view(self):
12971297
response = self.client.get(xss_url)
12981298
self.assertEqual(response.status_code, 404)
12991299

1300-
def test_scanpipe_views_project_dependency_tree(self):
1300+
@mock.patch("scanpipe.models.DiscoveredPackage.get_absolute_url")
1301+
def test_scanpipe_views_project_dependency_tree(self, mock_get_url):
1302+
mock_get_url.return_value = "mocked-url"
13011303
url = reverse("project_dependency_tree", args=[self.project1.slug])
13021304
response = self.client.get(url)
13031305
expected_tree = {"name": "Analysis", "children": []}
13041306
self.assertEqual(expected_tree, response.context["dependency_tree"])
13051307

13061308
project = Project.objects.create(name="project")
1307-
a = make_package(project, "pkg:type/a")
1309+
a = make_package(project, "pkg:type/a", compliance_alert="error")
13081310
b = make_package(project, "pkg:type/b")
13091311
c = make_package(project, "pkg:type/c")
13101312
make_package(project, "pkg:type/z")
@@ -1319,15 +1321,39 @@ def test_scanpipe_views_project_dependency_tree(self):
13191321
"children": [
13201322
{
13211323
"name": "pkg:type/a",
1324+
"url": "mocked-url",
1325+
"compliance_alert": "error",
1326+
"has_compliance_issue": True,
1327+
"is_vulnerable": False,
13221328
"children": [
1323-
{"name": "pkg:type/b", "children": [{"name": "pkg:type/c"}]}
1329+
{
1330+
"name": "pkg:type/b",
1331+
"url": "mocked-url",
1332+
"compliance_alert": "",
1333+
"has_compliance_issue": False,
1334+
"is_vulnerable": False,
1335+
"children": [
1336+
{
1337+
"name": "pkg:type/c",
1338+
"url": "mocked-url",
1339+
"compliance_alert": "",
1340+
"has_compliance_issue": False,
1341+
"is_vulnerable": False,
1342+
}
1343+
],
1344+
}
13241345
],
13251346
},
1326-
{"name": "pkg:type/z"},
1347+
{
1348+
"name": "pkg:type/z",
1349+
"url": "mocked-url",
1350+
"compliance_alert": "",
1351+
"has_compliance_issue": False,
1352+
"is_vulnerable": False,
1353+
},
13271354
],
13281355
}
13291356
self.assertEqual(expected_tree, response.context["dependency_tree"])
1330-
self.assertContains(response, '<script id="dependency_tree"')
13311357

13321358
# Adding a circular reference such as: Project -> A -> B -> C -> B -> C -> ...
13331359
make_dependency(project, for_package=c, resolved_to_package=b)

0 commit comments

Comments
 (0)