diff --git a/superset/db_engine_specs/gsheets.py b/superset/db_engine_specs/gsheets.py index e41738d3653d..0becf050647e 100644 --- a/superset/db_engine_specs/gsheets.py +++ b/superset/db_engine_specs/gsheets.py @@ -39,7 +39,7 @@ class GSheetsParametersType(TypedDict): credentials_info: Dict[str, Any] query: Dict[str, Any] - catalog: Dict[str, str] + table_catalog: Dict[str, str] class GSheetsEngineSpec(SqliteEngineSpec): @@ -94,9 +94,9 @@ def validate_parameters( errors: List[SupersetError] = [] credentials_info = parameters.get("credentials_info") - catalog = parameters.get("catalog", {}) + table_catalog = parameters.get("table_catalog", {}) - if not catalog: + if not table_catalog: return errors # We need a subject in case domain wide delegation is set, otherwise the @@ -109,7 +109,7 @@ def validate_parameters( "gsheets://", service_account_info=credentials_info, subject=subject, ) conn = engine.connect() - for name, url in catalog.items(): + for name, url in table_catalog.items(): try: results = conn.execute(f'SELECT * FROM "{url}" LIMIT 1') results.fetchall() diff --git a/tests/unit_tests/db_engine_specs/test_gsheets.py b/tests/unit_tests/db_engine_specs/test_gsheets.py index bc8ff1a6c590..1ced5969726b 100644 --- a/tests/unit_tests/db_engine_specs/test_gsheets.py +++ b/tests/unit_tests/db_engine_specs/test_gsheets.py @@ -48,7 +48,7 @@ def test_validate_parameters_catalog(mocker, app_context): ] parameters = { - "catalog": { + "table_catalog": { "private_sheet": "https://docs.google.com/spreadsheets/d/1/edit", "public_sheet": "https://docs.google.com/spreadsheets/d/1/edit#gid=1", "not_a_sheet": "https://www.google.com/", @@ -134,7 +134,7 @@ def test_validate_parameters_catalog_and_credentials(mocker, app_context): ] parameters = { - "catalog": { + "table_catalog": { "private_sheet": "https://docs.google.com/spreadsheets/d/1/edit", "public_sheet": "https://docs.google.com/spreadsheets/d/1/edit#gid=1", "not_a_sheet": "https://www.google.com/",