Skip to content

Commit 745140b

Browse files
committed
Add test for get_purl_from_node_module
Signed-off-by: Keshav Priyadarshi <git@keshav.space>
1 parent f29a406 commit 745140b

3 files changed

Lines changed: 19 additions & 2 deletions

File tree

scanpipe/pipes/d2d.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -908,7 +908,7 @@ def _map_javascript_npm_lookup_resource(
908908
project,
909909
):
910910
"""Map unmatched ``node_modules`` files."""
911-
purl = js.get_purl_from_node_module(to_directory)
911+
purl = js.get_purl_from_node_module(to_directory.path)
912912
matched = to_resources.filter(path__startswith=to_directory.path)
913913
if not matched:
914914
return 0

scanpipe/pipes/js.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ def get_js_map_basename_and_extension(filename):
210210

211211
def get_purl_from_node_module(node_module_directory):
212212
"""Return PURL for given a `node_modules` package directory."""
213-
path = Path(node_module_directory.path)
213+
path = Path(node_module_directory)
214214
path_parts = path.parts
215215

216216
npm_package = path_parts[-1]

scanpipe/tests/pipes/test_js.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -319,3 +319,20 @@ def test_scanpipe_pipes_js_get_basename_and_extension(self):
319319
for ext in js._js_extensions:
320320
basename, extension = js.get_js_map_basename_and_extension(f"file{ext}")
321321
self.assertEqual(("file", ext), (basename, extension))
322+
323+
def test_scanpipe_pipes_js_get_purl_from_node_module(self):
324+
node_module_directory1 = "atls!template-util$codemirror@5.65.2/"
325+
expected1 = "pkg:npm/codemirror@5.65.2"
326+
result1 = str(js.get_purl_from_node_module(node_module_directory1))
327+
328+
node_module_directory2 = "@atls!sig-local$babel%2Fruntime@7.17.9/"
329+
expected2 = "pkg:npm/%40babel/runtime@7.17.9"
330+
result2 = str(js.get_purl_from_node_module(node_module_directory2))
331+
332+
node_module_directory3 = "codemirror@5.65.2/"
333+
expected3 = "pkg:npm/codemirror@5.65.2"
334+
result3 = str(js.get_purl_from_node_module(node_module_directory3))
335+
336+
self.assertEqual(expected1, result1)
337+
self.assertEqual(expected2, result2)
338+
self.assertEqual(expected3, result3)

0 commit comments

Comments
 (0)