From 4d08781d04a3f90942bdab61d4fe2b9af2561aad Mon Sep 17 00:00:00 2001 From: Alexandre Girard Date: Wed, 28 Jun 2023 09:23:05 -0700 Subject: [PATCH] Revert "Low-Code CDK: make RecordFilter.filter_records as generator (#24772)" (#27789) This reverts commit 032f9b80453d43991d02eb80a4fadc6142d114ff. --- .../sources/declarative/extractors/record_filter.py | 4 +--- .../sources/declarative/extractors/test_record_filter.py | 2 +- .../sources/declarative/extractors/test_record_selector.py | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/airbyte-cdk/python/airbyte_cdk/sources/declarative/extractors/record_filter.py b/airbyte-cdk/python/airbyte_cdk/sources/declarative/extractors/record_filter.py index fd41e206c4ac..1944f67330e6 100644 --- a/airbyte-cdk/python/airbyte_cdk/sources/declarative/extractors/record_filter.py +++ b/airbyte-cdk/python/airbyte_cdk/sources/declarative/extractors/record_filter.py @@ -33,6 +33,4 @@ def filter_records( next_page_token: Optional[Mapping[str, Any]] = None, ) -> List[Record]: kwargs = {"stream_state": stream_state, "stream_slice": stream_slice, "next_page_token": next_page_token} - for record in records: - if self._filter_interpolator.eval(self.config, record=record, **kwargs): - yield record + return [record for record in records if self._filter_interpolator.eval(self.config, record=record, **kwargs)] diff --git a/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_filter.py b/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_filter.py index c1c2d1b13158..89d003b77652 100644 --- a/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_filter.py +++ b/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_filter.py @@ -52,4 +52,4 @@ def test_record_filter(test_name, filter_template, records, expected_records): actual_records = record_filter.filter_records( records, stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token ) - assert list(actual_records) == expected_records + assert actual_records == expected_records diff --git a/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_selector.py b/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_selector.py index 503cb5e054e3..6ca38fa999b6 100644 --- a/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_selector.py +++ b/airbyte-cdk/python/unit_tests/sources/declarative/extractors/test_record_selector.py @@ -78,7 +78,7 @@ def test_record_filter(test_name, field_path, filter_template, body, expected_re actual_records = record_selector.select_records( response=response, stream_state=stream_state, stream_slice=stream_slice, next_page_token=next_page_token ) - assert list(actual_records) == expected_records + assert actual_records == expected_records def create_response(body):