mirror of
https://github.com/apache/superset.git
synced 2026-04-23 01:55:09 +00:00
fix: Presto _show_columns return type (#20757)
This commit is contained in:
@@ -442,8 +442,7 @@ class PrestoEngineSpec(BaseEngineSpec): # pylint: disable=too-many-public-metho
|
||||
full_table = quote(table_name)
|
||||
if schema:
|
||||
full_table = "{}.{}".format(quote(schema), full_table)
|
||||
columns = inspector.bind.execute("SHOW COLUMNS FROM {}".format(full_table))
|
||||
return columns
|
||||
return inspector.bind.execute(f"SHOW COLUMNS FROM {full_table}").fetchall()
|
||||
|
||||
column_type_mappings = (
|
||||
(
|
||||
|
||||
@@ -84,7 +84,7 @@ class TestPrestoDbEngineSpec(TestDbEngineSpec):
|
||||
inspector.engine.dialect.identifier_preparer.quote_identifier = mock.Mock()
|
||||
row = mock.Mock()
|
||||
row.Column, row.Type, row.Null = column
|
||||
inspector.bind.execute = mock.Mock(return_value=[row])
|
||||
inspector.bind.execute.return_value.fetchall = mock.Mock(return_value=[row])
|
||||
results = PrestoEngineSpec.get_columns(inspector, "", "")
|
||||
self.assertEqual(len(expected_results), len(results))
|
||||
for expected_result, result in zip(expected_results, results):
|
||||
@@ -744,25 +744,29 @@ class TestPrestoDbEngineSpec(TestDbEngineSpec):
|
||||
inspector.engine.dialect.identifier_preparer.quote_identifier = (
|
||||
lambda x: f'"{x}"'
|
||||
)
|
||||
mock_execute = mock.MagicMock(return_value=["a", "b"])
|
||||
inspector.bind.execute = mock_execute
|
||||
inspector.bind.execute.return_value.fetchall = mock.MagicMock(
|
||||
return_value=["a", "b"]
|
||||
)
|
||||
table_name = "table_name"
|
||||
result = PrestoEngineSpec._show_columns(inspector, table_name, None)
|
||||
assert result == ["a", "b"]
|
||||
mock_execute.assert_called_once_with(f'SHOW COLUMNS FROM "{table_name}"')
|
||||
inspector.bind.execute.assert_called_once_with(
|
||||
f'SHOW COLUMNS FROM "{table_name}"'
|
||||
)
|
||||
|
||||
def test_show_columns_with_schema(self):
|
||||
inspector = mock.MagicMock()
|
||||
inspector.engine.dialect.identifier_preparer.quote_identifier = (
|
||||
lambda x: f'"{x}"'
|
||||
)
|
||||
mock_execute = mock.MagicMock(return_value=["a", "b"])
|
||||
inspector.bind.execute = mock_execute
|
||||
inspector.bind.execute.return_value.fetchall = mock.MagicMock(
|
||||
return_value=["a", "b"]
|
||||
)
|
||||
table_name = "table_name"
|
||||
schema = "schema"
|
||||
result = PrestoEngineSpec._show_columns(inspector, table_name, schema)
|
||||
assert result == ["a", "b"]
|
||||
mock_execute.assert_called_once_with(
|
||||
inspector.bind.execute.assert_called_once_with(
|
||||
f'SHOW COLUMNS FROM "{schema}"."{table_name}"'
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user