Page MenuHomeSoftware Heritage

D2122.id7109.diff
No OneTemporary

D2122.id7109.diff

diff --git a/swh/lister/npm/tests/api_response.json b/swh/lister/npm/tests/api_response.json
old mode 100644
new mode 120000
--- /dev/null
+++ b/swh/lister/npm/tests/api_response.json
@@ -0,0 +1 @@
+data/replicate.npmjs.com/_all_docs,startkey=%22%22,limit=1001
\ No newline at end of file
diff --git a/swh/lister/npm/tests/api_response.json b/swh/lister/npm/tests/data/replicate.npmjs.com/_all_docs,startkey=%22%22,limit=1001
copy from swh/lister/npm/tests/api_response.json
copy to swh/lister/npm/tests/data/replicate.npmjs.com/_all_docs,startkey=%22%22,limit=1001
diff --git a/swh/lister/npm/tests/test_npm_lister.py b/swh/lister/npm/tests/test_npm_lister.py
--- a/swh/lister/npm/tests/test_npm_lister.py
+++ b/swh/lister/npm/tests/test_npm_lister.py
@@ -1,7 +1,10 @@
-# Copyright (C) 2018-2019 the Software Heritage developers
+# Copyright (C) 2018-2019 The Software Heritage developers
+# See the AUTHORS file at the top-level directory of this distribution
# License: GNU General Public License version 3, or any later version
# See top-level LICENSE file for more information
+import logging
+
import re
import requests_mock
import unittest
@@ -10,6 +13,9 @@
from swh.lister.npm.lister import NpmLister, NpmIncrementalLister
+logger = logging.getLogger(__name__)
+
+
class NpmListerTester(HttpListerTesterBase, unittest.TestCase):
Lister = NpmLister
test_re = re.compile(r'^.*/_all_docs\?startkey=%22(.+)%22.*')
@@ -42,3 +48,31 @@
# it can not succeed for the npm lister due to the
# overriding of the string_pattern_check method
pass
+
+
+def test_lister_npm_basic_listing(swh_listers, requests_mock_datadir):
+ lister = swh_listers['npm']
+
+ lister.run()
+
+ r = lister.scheduler.search_tasks(task_type='load-npm')
+ assert len(r) == 100
+
+ for row in r:
+ logger.debug('row: %s', row)
+ assert row['type'] == 'load-npm'
+ # arguments check
+ args = row['arguments']['args']
+ assert len(args) == 2
+
+ package = args[0]
+ url = args[1]
+ assert url == 'https://www.npmjs.com/package/%s' % package
+
+ # kwargs
+ kwargs = row['arguments']['kwargs']
+ meta_url = kwargs['package_metadata_url']
+ assert meta_url == 'https://replicate.npmjs.com/%s' % package
+
+ assert row['policy'] == 'recurring'
+ assert row['priority'] is None

File Metadata

Mime Type
text/plain
Expires
Nov 5 2024, 8:30 AM (12 w, 4 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3226917

Event Timeline