You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by pk...@apache.org on 2022/05/25 21:23:32 UTC

[superset] branch master updated: fix: always create parameter json field (#19899)

This is an automated email from the ASF dual-hosted git repository.

pkdotson pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git


The following commit(s) were added to refs/heads/master by this push:
     new 0501ad25e8 fix: always create parameter json field (#19899)
0501ad25e8 is described below

commit 0501ad25e8437757b0ac611026734f2460796e1b
Author: Phillip Kelley-Dotson <pk...@yahoo.com>
AuthorDate: Wed May 25 14:23:25 2022 -0700

    fix: always create parameter json field (#19899)
    
    * fix: always create parameter json field
    
    * ensure validation for empty catalog
    
    * check engine instead of name
    
    * put validation in be
    
    * fix test
    
    * fix test
    
    * remove test
---
 superset/db_engine_specs/gsheets.py              | 8 ++++++++
 tests/unit_tests/db_engine_specs/test_gsheets.py | 9 ++++++++-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/superset/db_engine_specs/gsheets.py b/superset/db_engine_specs/gsheets.py
index ba13389e26..740c1bc33d 100644
--- a/superset/db_engine_specs/gsheets.py
+++ b/superset/db_engine_specs/gsheets.py
@@ -171,6 +171,14 @@ class GSheetsEngineSpec(SqliteEngineSpec):
 
         if not table_catalog:
             # Allowing users to submit empty catalogs
+            errors.append(
+                SupersetError(
+                    message="Sheet name is required",
+                    error_type=SupersetErrorType.CONNECTION_MISSING_PARAMETERS_ERROR,
+                    level=ErrorLevel.WARNING,
+                    extra={"catalog": {"idx": 0, "name": True}},
+                ),
+            )
             return errors
 
         # We need a subject in case domain wide delegation is set, otherwise the
diff --git a/tests/unit_tests/db_engine_specs/test_gsheets.py b/tests/unit_tests/db_engine_specs/test_gsheets.py
index b050c6fdbf..c2e8346c3c 100644
--- a/tests/unit_tests/db_engine_specs/test_gsheets.py
+++ b/tests/unit_tests/db_engine_specs/test_gsheets.py
@@ -40,7 +40,14 @@ def test_validate_parameters_simple(
         "catalog": {},
     }
     errors = GSheetsEngineSpec.validate_parameters(parameters)
-    assert errors == []
+    assert errors == [
+        SupersetError(
+            message="Sheet name is required",
+            error_type=SupersetErrorType.CONNECTION_MISSING_PARAMETERS_ERROR,
+            level=ErrorLevel.WARNING,
+            extra={"catalog": {"idx": 0, "name": True}},
+        ),
+    ]
 
 
 def test_validate_parameters_catalog(