airbyte icon indicating copy to clipboard operation
airbyte copied to clipboard

:bug: Source Fauna: fix bug during discover step

Open macmv opened this issue 2 years ago • 7 comments

What

In the fauna source, discover would crash if there were any indexes with no terms or no values. This PR fixes that bug.

How

Bug is fixed, and added a test to validate it.

🚨 User Impact 🚨

None.

Tests

Unit
Test session starts (platform: linux, Python 3.9.15, pytest 6.2.5, pytest-sugar 0.9.6)
cachedir: .pytest_cache
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.hypothesis/examples')
rootdir: /home/macmv/Desktop/programming/fauna/airbyte, configfile: pytest.ini
plugins: requests-mock-1.9.3, hypothesis-6.54.6, sugar-0.9.6, cov-3.0.0, timeout-1.4.2, mock-3.6.1
collecting ... Expr({'now': None})
Expr({'paginate': Expr({'collections': None})})
Expr({'paginate': Expr({'indexes': None})})
status=<Status.SUCCEEDED: 'SUCCEEDED'> message=None

 airbyte-integrations/connectors/source-fauna/unit_tests/check_test.py::test_valid_query ✓                                                                                                                         6% ▋         <MagicMock id='139937744223968'>

 airbyte-integrations/connectors/source-fauna/unit_tests/check_test.py::test_invalid_check ✓                                                                                                                      11% █▎        Waiting for FaunaDB to start...
.........
FaunaDB is ready! Starting tests
Setting up database...
Database is setup!
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '105', 'ts': 1670542297820000, 'my_deletion_col': '2022-12-08T23:31:37.820000'}
Ref(id=350521600687211008, collection=Ref(id=foo, collection=Ref(id=collections))) Ref(id=350521600707133952, collection=Ref(id=foo, collection=Ref(id=collections))) Ref(id=350521600728105472, collection=Ref(id=foo, collection=Ref(id=collections)))
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '350521600687211008', 'ts': 1670542297970000, 'my_deletion_col': '2022-12-08T23:31:37.970000'}
[info]: emitting object {'ref': '350521600728105472', 'ts': 1670542297990000, 'my_deletion_col': '2022-12-08T23:31:37.990000'}
[info]: emitting object {'ref': '350521600707133952', 'ts': 1670542298010000, 'my_deletion_col': '2022-12-08T23:31:38.010000'}
=== check: make sure we read the initial state
[info]: state: {}
[info]: syncing stream 'foo' with incremental
[info]: found index 'foo_ts', which will be used to sync 'foo'
[info]: skipping collection events (no deletions needed)
[info]: reading document updates for stream foo
=== check: make sure the state resumes
[info]: state: {'foo': {'updates_cursor': {'ts': 1670542297490000, 'ref': '104'}}}
[info]: syncing stream 'foo' with incremental
[info]: found index 'foo_ts', which will be used to sync 'foo'
[info]: skipping collection events (no deletions needed)
[info]: reading document updates for stream foo
=== check: make sure that updates are actually read
[info]: state: {'foo': {'updates_cursor': {'ts': 1670542297490000, 'ref': '104'}}}
[info]: syncing stream 'foo' with incremental
[info]: found index 'foo_ts', which will be used to sync 'foo'
[info]: skipping collection events (no deletions needed)
[info]: reading document updates for stream foo
=== check: make sure we read the initial state
[info]: state: {}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
=== check: make sure we don't produce more records when nothing changed
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 0, 'ref': ''}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
=== check: make sure deleted documents produce records
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 0, 'ref': ''}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: emitting object {'ref': '101', 'ts': 1670542298580000, 'deleted_at': '2022-12-08T23:31:38.580000'}
[info]: emitting object {'ref': '103', 'ts': 1670542298590000, 'deleted_at': '2022-12-08T23:31:38.590000'}
[info]: reading document updates for stream deletions_test
=== check: make sure we don't produce more deleted documents when nothing changed
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 1670542298590000, 'ref': '103'}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
=== check: make sure another deleted document produces one more record
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 1670542298590000, 'ref': '103'}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: emitting object {'ref': '102', 'ts': 1670542298760000, 'deleted_at': '2022-12-08T23:31:38.760000'}
[info]: reading document updates for stream deletions_test
=== check: make sure we don't produce more deleted documents when nothing changed
[info]: state: {'deletions_test': {'remove_cursor': {'ts': 1670542298760000, 'ref': '102'}, 'updates_cursor': {'ts': 1670542298370000, 'ref': '104'}}}
[info]: syncing stream 'deletions_test' with incremental
[info]: found index 'deletions_test_ts', which will be used to sync 'deletions_test'
[info]: reading add/removes for stream deletions_test
[info]: reading document updates for stream deletions_test
Stopping FaunaDB container...
Stopped FaunaDB container

 airbyte-integrations/connectors/source-fauna/unit_tests/database_test.py::test_database ✓                                                                                                                        17% █▋        Expr({'paginate': Expr({'indexes': None})})
Expr({'get': Ref(id=ts, collection=Ref(id=indexes))})
Expr({'paginate': Expr({'collections': None})})

 airbyte-integrations/connectors/source-fauna/unit_tests/discover_test.py::test_simple_discover ✓                                                                                                                 22% ██▎       [info]: no after token, starting from beginning

 airbyte-integrations/connectors/source-fauna/unit_tests/full_refresh_test.py::test_read_all ✓                                                                                                                    28% ██▊       [info]: no after token, starting from beginning

 airbyte-integrations/connectors/source-fauna/unit_tests/full_refresh_test.py::test_read_all_extra_columns ✓                                                                                                      33% ███▍      [info]: no after token, starting from beginning
[info]: using after token ['even more magical', 3, 'data']

 airbyte-integrations/connectors/source-fauna/unit_tests/full_refresh_test.py::test_read_all_resume ✓                                                                                                             39% ███▉      [info]: state: {}
[info]: syncing stream 'my_stream_name' with incremental
[info]: found index 'ts', which will be used to sync 'my_stream_name'

 airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_no_updates_or_creates_but_removes_present ✓                                                                               44% ████▌     [info]: state: {}
[info]: syncing stream 'my_stream_name' with incremental
[info]: found index 'my_stream_name_ts', which will be used to sync 'my_stream_name'
[info]: skipping collection events (no deletions needed)

 airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_updates_ignore_deletes ✓                                                                                                  50% █████     [info]: reading add/removes for stream foo
[info]: emitting object {'ref': '100', 'ts': 99, 'deletes_here': '1970-01-01T00:00:00.000099'}
[info]: emitting object {'ref': '5', 'ts': 999, 'deletes_here': '1970-01-01T00:00:00.000999'}
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '3', 'ts': 12345, 'deletes_here': '1970-01-01T00:00:00.012345'}
[info]: reading add/removes for stream foo

 airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_removes_resume_from_partial_failure ✓                                                                                     56% █████▋    [info]: reading add/removes for stream foo
[info]: emitting object {'ref': '100', 'ts': 1648944000000000.0, 'my_deleted_column': '2022-04-03T00:00:00'}
[info]: reading add/removes for stream foo
[info]: reading add/removes for stream foo
[info]: emitting object {'ref': '300', 'ts': 1648944001000000.0, 'my_deleted_column': '2022-04-03T00:00:01'}

 airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_remove_deletions ✓                                                                                                        61% ██████▎   [info]: reading document updates for stream my_stream_name
[info]: reading document updates for stream my_stream_name
[info]: reading document updates for stream my_stream_name

 airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_updates_query ✓                                                                                                           67% ██████▋   [info]: reading document updates for stream my_stream_name
[info]: reading document updates for stream my_stream_name

 airbyte-integrations/connectors/source-fauna/unit_tests/incremental_test.py::test_read_updates_resume ✓                                                                                                          72% ███████▎
 airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_date ✓                                                                                                                           78% ███████▊
 airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_fauna_time ✓                                                                                                                     83% ████████▍
 airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_bytes ✓                                                                                                                          89% ████████▉
 airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_ref ✓                                                                                                                            94% █████████▌
 airbyte-integrations/connectors/source-fauna/unit_tests/serialize_test.py::test_recursive ✓                                                                                                                     100% ██████████
======================================================================================================= warnings summary =======================================================================================================
.venv/lib/python3.9/site-packages/hyper/http11/connection.py:13
.venv/lib/python3.9/site-packages/hyper/http11/connection.py:13
  /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.venv/lib/python3.9/site-packages/hyper/http11/connection.py:13: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
    from collections import Iterable, Mapping

.venv/lib/python3.9/site-packages/hyperframe/flags.py:14
  /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.venv/lib/python3.9/site-packages/hyperframe/flags.py:14: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
    class Flags(collections.MutableSet):

.venv/lib/python3.9/site-packages/hyper/common/headers.py:13
  /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.venv/lib/python3.9/site-packages/hyper/common/headers.py:13: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
    class HTTPHeaderMap(collections.MutableMapping):

-- Docs: https://docs.pytest.org/en/stable/warnings.html

Results (14.05s):
      18 passed
Integration
Test session starts (platform: linux, Python 3.9.15, pytest 6.2.5, pytest-sugar 0.9.6)
cachedir: .pytest_cache
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/.hypothesis/examples')
rootdir: /home/macmv/Desktop/programming/fauna/airbyte, configfile: pytest.ini
plugins: requests-mock-1.9.3, hypothesis-6.54.6, sugar-0.9.6, cov-3.0.0, timeout-1.4.2, mock-3.6.1
collecting ... {"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "WARN", "message": "The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format."}}
{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_config_match_spec[inputs0] ✓                                                                           2% ▎         {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_match_expected[inputs0] ✓                                                                              4% ▌         {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_docker_env[inputs0] ✓                                                                                  7% ▋         {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_enum_usage[inputs0] ✓                                                                                  9% ▉         {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_oneof_usage[inputs0] ✓                                                                                11% █▏
 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_required[inputs0] ✓                                                                                   13% █▍
 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_optional[inputs0] ✓                                                                                   15% █▌
 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_has_secret[inputs0] ✓                                                                                 17% █▊
 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_secret_never_in_the_output[inputs0] ✓                                                                 20% █▉        {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_secret_is_properly_marked[inputs0] ✓                                                                  22% ██▎       {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_defined_refs_exist_in_json_spec_file[inputs0] ✓                                                       24% ██▍       {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_oauth_flow_parameters[inputs0] ✓                                                                      26% ██▋       {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_backward_compatibility[inputs0] ✓                                                                     28% ██▉       {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestSpec.test_additional_properties_is_true[inputs0] ✓                                                              30% ███▏      {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestConnection.test_check[inputs0] ✓                                                                                33% ███▍      {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestConnection.test_check[inputs1] ✓                                                                                35% ███▌      {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/integration_tests/config/invalid.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestConnection.test_check[inputs2] ✓                                                                                37% ███▊      {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_discover[inputs0] ✓                                                                              39% ███▉      {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_discover[inputs1] ✓                                                                              41% ████▎     {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_cursors_exist_in_schema[inputs0] ✓                                                       43% ████▍     {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_cursors_exist_in_schema[inputs1] ✓                                                       46% ████▋     {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_refs_exist_in_schema[inputs0] ✓                                                          48% ████▊     {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_refs_exist_in_schema[inputs1] ✓                                                          50% █████     {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs0-allOf] ✓                                                 52% █████▎    {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs0-not] ✓                                                   54% █████▌    {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs1-allOf] ✓                                                 57% █████▋    {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_defined_keyword_exist_in_schema[inputs1-not] ✓                                                   59% █████▉    {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_primary_keys_exist_in_schema[inputs0] ✓                                                          61% ██████▏   {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_primary_keys_exist_in_schema[inputs1] ✓                                                          63% ██████▍   {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_streams_has_sync_modes[inputs0] ✓                                                                65% ██████▌   {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_streams_has_sync_modes[inputs1] ✓                                                                67% ██████▊   {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_additional_properties_is_true[inputs0] ✓                                                         70% ██████▉   {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_additional_properties_is_true[inputs1] ✓                                                         72% ███████▎  {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_backward_compatibility[inputs0] ✓                                                                74% ███████▍  {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestDiscovery.test_backward_compatibility[inputs1] ✓                                                                76% ███████▋  {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
{"type": "LOG", "log": {"level": "INFO", "message": "Actual records for stream sample-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n  \"ref\": \"337567897171787849\",\n  \"ts\": 1658188683585000,\n  \"data\": {\n   \"a\": 5,\n   \"nested\": {\n    \"value\": 15\n   }\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"337567897172836425\",\n  \"ts\": 1658271973660000,\n  \"data\": {\n   \"a\": 6,\n   \"nested\": {\n    \"value\": 20\n   },\n   \"name\": \"hello world\"\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"337567897172837449\",\n  \"ts\": 1658188683585000,\n  \"data\": {\n   \"a\": 7,\n   \"nested\": {\n    \"value\": 25\n   }\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"337567897173885001\",\n  \"ts\": 1658188683585000,\n  \"data\": {\n   \"a\": 8,\n   \"nested\": {\n    \"value\": 30\n   }\n  },\n  \"ttl\": null\n }\n]"}}
{"type": "LOG", "log": {"level": "INFO", "message": "Expected records for stream sample-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n  \"ref\": \"337567897171787849\",\n  \"ts\": 1658188683585000,\n  \"data\": {\n   \"a\": 5,\n   \"nested\": {\n    \"value\": 15\n   }\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"337567897172836425\",\n  \"ts\": 1658271973660000,\n  \"data\": {\n   \"a\": 6,\n   \"nested\": {\n    \"value\": 20\n   },\n   \"name\": \"hello world\"\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"337567897172837449\",\n  \"ts\": 1658188683585000,\n  \"data\": {\n   \"a\": 7,\n   \"nested\": {\n    \"value\": 25\n   }\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"337567897173885001\",\n  \"ts\": 1658188683585000,\n  \"data\": {\n   \"a\": 8,\n   \"nested\": {\n    \"value\": 30\n   }\n  },\n  \"ttl\": null\n }\n]"}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_read[inputs0] ✓                                                                                  78% ███████▉  {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}
{"type": "LOG", "log": {"level": "INFO", "message": "Actual records for stream deletions-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n  \"ref\": \"338836293305763911\",\n  \"ts\": 1659398359360000,\n  \"deleted_at\": \"2022-08-01T23:59:19.360000\"\n },\n {\n  \"ref\": \"338836293305761863\",\n  \"ts\": 1659398366330000,\n  \"deleted_at\": \"2022-08-01T23:59:26.330000\"\n },\n {\n  \"ref\": \"338836293305765959\",\n  \"ts\": 1659398371330000,\n  \"deleted_at\": \"2022-08-01T23:59:31.330000\"\n },\n {\n  \"ref\": \"338836293305762887\",\n  \"ts\": 1659398320430000,\n  \"data\": {\n   \"a\": 6,\n   \"nested\": {\n    \"value\": 20\n   }\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"338836293305764935\",\n  \"ts\": 1659398320430000,\n  \"data\": {\n   \"a\": 8,\n   \"nested\": {\n    \"value\": 30\n   }\n  },\n  \"ttl\": null\n }\n]"}}
{"type": "LOG", "log": {"level": "INFO", "message": "Expected records for stream deletions-data:"}}
{"type": "LOG", "log": {"level": "INFO", "message": "[\n {\n  \"ref\": \"338836293305763911\",\n  \"ts\": 1659398359360000,\n  \"deleted_at\": \"2022-08-01T23:59:19.360000\"\n },\n {\n  \"ref\": \"338836293305761863\",\n  \"ts\": 1659398366330000,\n  \"deleted_at\": \"2022-08-01T23:59:26.330000\"\n },\n {\n  \"ref\": \"338836293305765959\",\n  \"ts\": 1659398371330000,\n  \"deleted_at\": \"2022-08-01T23:59:31.330000\"\n },\n {\n  \"ref\": \"338836293305762887\",\n  \"ts\": 1659398320430000,\n  \"data\": {\n   \"a\": 6,\n   \"nested\": {\n    \"value\": 20\n   }\n  },\n  \"ttl\": null\n },\n {\n  \"ref\": \"338836293305764935\",\n  \"ts\": 1659398320430000,\n  \"data\": {\n   \"a\": 8,\n   \"nested\": {\n    \"value\": 30\n   }\n  },\n  \"ttl\": null\n }\n]"}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_read[inputs1] ✓                                                                                  80% ████████▏ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "ERROR", "message": "Docker container failed, code 1, error:\n{\"type\": \"TRACE\", \"trace\": {\"type\": \"ERROR\", \"emitted_at\": 1670543087044.6821, \"error\": {\"message\": \"Something went wrong in the connector. See the logs for more details.\", \"internal_message\": \"2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n  value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n  value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\", \"stack_trace\": \"Traceback (most recent call last):\\n  File \\\"/airbyte/integration_code/main.py\\\", line 13, in <module>\\n    launch(source, sys.argv[1:])\\n  File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 131, in launch\\n    for message in source_entrypoint.run(parsed_args):\\n  File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 119, in run\\n    config_catalog = self.source.read_catalog(parsed_args.catalog)\\n  File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/sources/source.py\\\", line 89, in read_catalog\\n    return ConfiguredAirbyteCatalog.parse_obj(self._read_json_file(catalog_path))\\n  File \\\"pydantic/main.py\\\", line 521, in pydantic.main.BaseModel.parse_obj\\n  File \\\"pydantic/main.py\\\", line 341, in pydantic.main.BaseModel.__init__\\npydantic.error_wrappers.ValidationError: 2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n  value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n  value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\\n\", \"failure_type\": \"system_error\"}}}\n"}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_airbyte_trace_message_on_failure[inputs0] ✓                                                      83% ████████▍ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "ERROR", "message": "Docker container failed, code 1, error:\n{\"type\": \"TRACE\", \"trace\": {\"type\": \"ERROR\", \"emitted_at\": 1670543087682.99, \"error\": {\"message\": \"Something went wrong in the connector. See the logs for more details.\", \"internal_message\": \"2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n  value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n  value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\", \"stack_trace\": \"Traceback (most recent call last):\\n  File \\\"/airbyte/integration_code/main.py\\\", line 13, in <module>\\n    launch(source, sys.argv[1:])\\n  File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 131, in launch\\n    for message in source_entrypoint.run(parsed_args):\\n  File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/entrypoint.py\\\", line 119, in run\\n    config_catalog = self.source.read_catalog(parsed_args.catalog)\\n  File \\\"/usr/local/lib/python3.9/site-packages/airbyte_cdk/sources/source.py\\\", line 89, in read_catalog\\n    return ConfiguredAirbyteCatalog.parse_obj(self._read_json_file(catalog_path))\\n  File \\\"pydantic/main.py\\\", line 521, in pydantic.main.BaseModel.parse_obj\\n  File \\\"pydantic/main.py\\\", line 341, in pydantic.main.BaseModel.__init__\\npydantic.error_wrappers.ValidationError: 2 validation errors for ConfiguredAirbyteCatalog\\nstreams -> 0 -> sync_mode\\n  value is not a valid enumeration member; permitted: 'full_refresh', 'incremental' (type=type_error.enum; enum_values=[<SyncMode.full_refresh: 'full_refresh'>, <SyncMode.incremental: 'incremental'>])\\nstreams -> 0 -> destination_sync_mode\\n  value is not a valid enumeration member; permitted: 'append', 'overwrite', 'append_dedup' (type=type_error.enum; enum_values=[<DestinationSyncMode.append: 'append'>, <DestinationSyncMode.overwrite: 'overwrite'>, <DestinationSyncMode.append_dedup: 'append_dedup'>])\\n\", \"failure_type\": \"system_error\"}}}\n"}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py::TestBasicRead.test_airbyte_trace_message_on_failure[inputs1] ✓                                                      85% ████████▌ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_full_refresh.py::TestFullRefresh.test_sequential_reads[inputs0] ✓                                                            87% ████████▊ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_two_sequential_reads[inputs0] ✓                                                         89% ████████▉ {"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_two_sequential_reads[inputs1] ✓                                                         91% █████████▎{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_read_sequential_slices[inputs0] ✓                                                       93% █████████▍{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_read_sequential_slices[inputs1] ✓                                                       96% █████████▋{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_state_with_abnormally_large_values[inputs0] ✓                                           98% █████████▊{"type": "LOG", "log": {"level": "INFO", "message": "Using /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna/secrets/config-deletions.json as configuration. It is the most recent version."}}
{"type": "LOG", "log": {"level": "INFO", "message": "The configured catalog is built from a custom configured catalog."}}

 airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_incremental.py::TestIncremental.test_state_with_abnormally_large_values[inputs1] ✓                                          100% ██████████
{"type": "LOG", "log": {"level": "INFO", "message": "/home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/connectors/source-fauna - SAT run - b03d701bab75304f2139593c5219c3361f238487 - PASSED"}}

======================================================================================================= warnings summary =======================================================================================================
../../bases/source-acceptance-test/source_acceptance_test/config.py:257: 30 warnings
airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/tests/test_core.py: 1 warning
  /home/macmv/Desktop/programming/fauna/airbyte/airbyte-integrations/bases/source-acceptance-test/source_acceptance_test/config.py:257: DeprecationWarning: The 'warn' function is deprecated, use 'warning' instead
    logging.warn("The acceptance-test-config.yml file is in a legacy format. Please migrate to the latest format.")

-- Docs: https://docs.pytest.org/en/stable/warnings.html

Results (31.77s):
      46 passed

macmv avatar Dec 08 '22 23:12 macmv

/test connector=connectors/source-fauna

:clock2: connectors/source-fauna https://github.com/airbytehq/airbyte/actions/runs/3659780632 :white_check_mark: connectors/source-fauna https://github.com/airbytehq/airbyte/actions/runs/3659780632 Python tests coverage:

Name                        Stmts   Miss  Cover
-----------------------------------------------
source_fauna/__init__.py        2      0   100%
source_fauna/serialize.py      37      1    97%
source_fauna/source.py        243     50    79%
-----------------------------------------------
TOTAL                         282     51    82%
	 Name                                                 Stmts   Miss  Cover   Missing
	 ----------------------------------------------------------------------------------
	 source_acceptance_test/base.py                          12      4    67%   16-19
	 source_acceptance_test/config.py                       140      5    96%   87, 93, 238, 242-243
	 source_acceptance_test/conftest.py                     208     92    56%   36, 42-44, 49, 54, 77, 83, 89-91, 110, 115-117, 123-125, 131-132, 137-138, 143, 149, 158-167, 173-178, 193, 217, 248, 254, 262-267, 275-280, 288-301, 306-312, 319-330, 337-353
	 source_acceptance_test/plugin.py                        69     25    64%   22-23, 31, 36, 120-140, 144-148
	 source_acceptance_test/tests/test_core.py              398    111    72%   53, 58, 87-95, 100-107, 111-112, 116-117, 299, 337-354, 363-371, 375-380, 386, 419-424, 462-469, 512-514, 517, 582-590, 602-605, 610, 666-667, 673, 676, 712-722, 735-760
	 source_acceptance_test/tests/test_incremental.py       158     14    91%   52-59, 64-77, 240
	 source_acceptance_test/utils/asserts.py                 39      2    95%   62-63
	 source_acceptance_test/utils/common.py                  94     10    89%   16-17, 32-38, 72, 75
	 source_acceptance_test/utils/compare.py                 62     23    63%   21-51, 68, 97-99
	 source_acceptance_test/utils/connector_runner.py       133     33    75%   24-27, 46-47, 50-54, 57-58, 73-75, 78-80, 83-85, 88-90, 93-95, 124-125, 159-161, 208
	 source_acceptance_test/utils/json_schema_helper.py     107     13    88%   30-31, 38, 41, 65-68, 96, 120, 192-194
	 ----------------------------------------------------------------------------------
	 TOTAL                                                 1599    332    79%

Build Passed

Test summary info:

All Passed

marcosmarxm avatar Dec 09 '22 18:12 marcosmarxm

Yeah, sure thing. I just bumped the version in:

        modified:   airbyte-config/init/src/main/resources/seed/source_definitions.yaml
        modified:   airbyte-integrations/connectors/source-fauna/Dockerfile
        modified:   docs/integrations/sources/fauna.md

LMK if you need any other changes.

macmv avatar Dec 12 '22 17:12 macmv

/publish connector=connectors/source-fauna

:clock2: Publishing the following connectors:
connectors/source-fauna
https://github.com/airbytehq/airbyte/actions/runs/3690581588

Connector Did it publish? Were definitions generated?
connectors/source-fauna :white_check_mark: :x:

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

marcosmarxm avatar Dec 14 '22 00:12 marcosmarxm

Hello :wave::skin-tone-2: and thank you for your contribution!

Airbyte has instituted a code freeze between 19 and 30 December, to make sure there are no disruptions during the holidays. Because of this, reviewing and merging your contribution may take longer than usual. We apologize for the delay, but we want everyone to have a quiet and happy holiday.

If you have any questions or need further clarification, please don't hesitate to ping via Slack.

marcosmarxm avatar Dec 20 '22 19:12 marcosmarxm

@marcosmarxm could we get another look at this now that the code freeze is over?

doom-weaver avatar Jan 27 '23 16:01 doom-weaver

/publish connector=connectors/source-fauna

:clock2: Publishing the following connectors:
connectors/source-fauna
https://github.com/airbytehq/airbyte/actions/runs/4076103788

Connector Did it publish? Were definitions generated?
connectors/source-fauna :x: :x:

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

natalyjazzviolin avatar Feb 02 '23 15:02 natalyjazzviolin

@macmv could you run ./gradlew :airbyte-config:init:processResources and commit the change? The version autobump did not work, so that's the workaround to fix this from no.4 in this doc..

We have a 24 hour code freeze in place but after that we should be good to merge.

natalyjazzviolin avatar Feb 02 '23 16:02 natalyjazzviolin

Thanks for the reply @natalyjazzviolin. I just ran it, and it completed successfully and bumped the connector version in the seed file. I also rebased to the latest version of master. Are things ready to merge now?

macmv avatar Feb 07 '23 00:02 macmv

Hey @natalyjazzviolin I've updated the PR, could you take another look at it?

macmv avatar Feb 22 '23 17:02 macmv

@misteryeo can you help us get this out?

doom-weaver avatar Feb 28 '23 17:02 doom-weaver

Closing this PR in favor of the non-forked one where we can see that the build passes: https://github.com/airbytehq/airbyte/pull/23583

natalyjazzviolin avatar Feb 28 '23 18:02 natalyjazzviolin

Sweet, thanks!

macmv avatar Feb 28 '23 19:02 macmv