From 8dc9797dc5f38a8994599e8e4b2cc2ce73956b1f Mon Sep 17 00:00:00 2001 From: Yohanna Lisnichuk Date: Thu, 11 Apr 2024 16:33:07 -0400 Subject: [PATCH 1/4] feat: remove check for default steps in kigfisher process --- kingfisher_scrapy/base_spiders/base_spider.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kingfisher_scrapy/base_spiders/base_spider.py b/kingfisher_scrapy/base_spiders/base_spider.py index 30bf8810..1e4b4070 100644 --- a/kingfisher_scrapy/base_spiders/base_spider.py +++ b/kingfisher_scrapy/base_spiders/base_spider.py @@ -114,7 +114,8 @@ def __init__(self, sample=None, path=None, from_date=None, until_date=None, craw self.kingfisher_process_note = note self.kingfisher_process_keep_collection_open = keep_collection_open == 'true' if steps is None: - self.kingfisher_process_steps = self.available_steps + # Set the compile step only by default, as the check step is very slow. + self.kingfisher_process_steps = {'compile'} else: self.kingfisher_process_steps = set(steps.split(',')) & self.available_steps From 8220a4861574c392743804caae73020fa85125ec Mon Sep 17 00:00:00 2001 From: Yohanna Lisnichuk Date: Thu, 11 Apr 2024 17:03:18 -0400 Subject: [PATCH 2/4] Apply suggestions from code review --- kingfisher_scrapy/base_spiders/base_spider.py | 1 - tests/extensions/test_kingfisher_process_api2.py | 2 -- 2 files changed, 3 deletions(-) diff --git a/kingfisher_scrapy/base_spiders/base_spider.py b/kingfisher_scrapy/base_spiders/base_spider.py index 1e4b4070..baaeab22 100644 --- a/kingfisher_scrapy/base_spiders/base_spider.py +++ b/kingfisher_scrapy/base_spiders/base_spider.py @@ -114,7 +114,6 @@ def __init__(self, sample=None, path=None, from_date=None, until_date=None, craw self.kingfisher_process_note = note self.kingfisher_process_keep_collection_open = keep_collection_open == 'true' if steps is None: - # Set the compile step only by default, as the check step is very slow. self.kingfisher_process_steps = {'compile'} else: self.kingfisher_process_steps = set(steps.split(',')) & self.available_steps diff --git a/tests/extensions/test_kingfisher_process_api2.py b/tests/extensions/test_kingfisher_process_api2.py index ea9c6de6..2e8f881b 100644 --- a/tests/extensions/test_kingfisher_process_api2.py +++ b/tests/extensions/test_kingfisher_process_api2.py @@ -176,8 +176,6 @@ def test_spider_opened( } if steps != 'check': expected['compile'] = True - if steps != 'compile': - expected['check'] = True calls = mock.call_args_list From 872266cdf1dfe678ee7fd9de128bf624a644807e Mon Sep 17 00:00:00 2001 From: James McKinney <26463+jpmckinney@users.noreply.github.com> Date: Thu, 11 Apr 2024 18:01:30 -0400 Subject: [PATCH 3/4] test: Fix test expectation for new default steps --- tests/extensions/test_kingfisher_process_api2.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/extensions/test_kingfisher_process_api2.py b/tests/extensions/test_kingfisher_process_api2.py index 2e8f881b..015f8413 100644 --- a/tests/extensions/test_kingfisher_process_api2.py +++ b/tests/extensions/test_kingfisher_process_api2.py @@ -130,7 +130,12 @@ def test_from_crawler_with_database_url(): @pytest.mark.parametrize('note', [None, 'Started by NAME.']) @pytest.mark.parametrize('job', [None, '7df53218f37a11eb80dd0c9d92c523cb']) @pytest.mark.parametrize('ocds_version,upgrade', [('1.0', True), (None, False)]) -@pytest.mark.parametrize('steps', [None, 'compile,check,invalid', 'compile', 'check']) +@pytest.mark.parametrize('steps,expected_steps', [ + (None, ['compile']), + ('compile,check,invalid', ['compile', 'check']), + ('compile', ['compile']), + ('check', ['check']), +]) @pytest.mark.parametrize('call_count,status_code,messages', [ (2, 200, [ ('INFO', 'Created collection 1 in Kingfisher Process'), ('INFO', 'Closed collection 1 in Kingfisher Process') @@ -149,6 +154,7 @@ def test_spider_opened( ocds_version, upgrade, steps, + expected_steps, call_count, status_code, messages, @@ -174,8 +180,8 @@ def test_spider_opened( 'job': job, 'upgrade': upgrade, } - if steps != 'check': - expected['compile'] = True + for step in expected_steps: + expected[step] = True calls = mock.call_args_list From b2a7de2c3bc0f5532a7a1d7c4117b31c123cab71 Mon Sep 17 00:00:00 2001 From: James McKinney <26463+jpmckinney@users.noreply.github.com> Date: Thu, 11 Apr 2024 18:03:12 -0400 Subject: [PATCH 4/4] test: Add test case for steps= spider argument --- tests/extensions/test_kingfisher_process_api2.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/extensions/test_kingfisher_process_api2.py b/tests/extensions/test_kingfisher_process_api2.py index 015f8413..73c1bb9f 100644 --- a/tests/extensions/test_kingfisher_process_api2.py +++ b/tests/extensions/test_kingfisher_process_api2.py @@ -135,6 +135,7 @@ def test_from_crawler_with_database_url(): ('compile,check,invalid', ['compile', 'check']), ('compile', ['compile']), ('check', ['check']), + ('', []), ]) @pytest.mark.parametrize('call_count,status_code,messages', [ (2, 200, [