Skip to content

Consolidate duplicated catalog behavior tests into parameterized test suite #2870

@nssalian

Description

@nssalian

InMemoryCatalog and SqlCatalog share multiple identical tests. GlueCatalog and DynamoDbCatalog share multiple as well. HiveCatalog and BigQueryMetastoreCatalog have limited overlap and different mocking requirements, so consolidation may not be practical for those.

Possible Approach:
Add tests/catalog/conftest.py to hold catalog fixtures.

For InMemoryCatalog and SqlCatalog:

  • Create tests/catalog/test_catalog_behaviors.py with a parameterized catalog fixture for InMemoryCatalog and SqlCatalog
  • Remove consolidated tests from test_base.py and test_sql.py

For GlueCatalog and DynamoDbCatalog:

  • Create tests/catalog/test_aws_catalog_behaviors.py with a parameterized aws_catalog fixture for GlueCatalog and DynamoDbCatalog
  • Remove consolidated tests from test_glue.py and test_dynamodb.py

Related to: #813, #2090

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions