mirror of
https://github.com/apache/superset.git
synced 2026-04-19 16:14:52 +00:00
feat: support complex types and use get_columns implementation of starrrocks python client (#24237)
This commit is contained in:
@@ -18,10 +18,20 @@
|
||||
from typing import Any, Optional
|
||||
|
||||
import pytest
|
||||
from sqlalchemy import types
|
||||
from sqlalchemy import JSON, types
|
||||
from sqlalchemy.engine.url import make_url
|
||||
|
||||
from superset.db_engine_specs.starrocks import ARRAY, DOUBLE, MAP, STRUCT, TINYINT
|
||||
from superset.db_engine_specs.starrocks import (
|
||||
ARRAY,
|
||||
BITMAP,
|
||||
DOUBLE,
|
||||
HLL,
|
||||
LARGEINT,
|
||||
MAP,
|
||||
PERCENTILE,
|
||||
STRUCT,
|
||||
TINYINT,
|
||||
)
|
||||
from superset.utils.core import GenericDataType
|
||||
from tests.unit_tests.db_engine_specs.utils import assert_column_spec
|
||||
|
||||
@@ -30,17 +40,22 @@ from tests.unit_tests.db_engine_specs.utils import assert_column_spec
|
||||
"native_type,sqla_type,attrs,generic_type,is_dttm",
|
||||
[
|
||||
# Numeric
|
||||
("TINYINT", TINYINT, None, GenericDataType.NUMERIC, False),
|
||||
("DECIMAL", types.DECIMAL, None, GenericDataType.NUMERIC, False),
|
||||
("DOUBLE", DOUBLE, None, GenericDataType.NUMERIC, False),
|
||||
("tinyint", TINYINT, None, GenericDataType.NUMERIC, False),
|
||||
("largeint", LARGEINT, None, GenericDataType.NUMERIC, False),
|
||||
("decimal(38,18)", types.DECIMAL, None, GenericDataType.NUMERIC, False),
|
||||
("double", DOUBLE, None, GenericDataType.NUMERIC, False),
|
||||
# String
|
||||
("CHAR", types.CHAR, None, GenericDataType.STRING, False),
|
||||
("VARCHAR", types.VARCHAR, None, GenericDataType.STRING, False),
|
||||
("BINARY", types.String, None, GenericDataType.STRING, False),
|
||||
("char(10)", types.CHAR, None, GenericDataType.STRING, False),
|
||||
("varchar(65533)", types.VARCHAR, None, GenericDataType.STRING, False),
|
||||
("binary", types.String, None, GenericDataType.STRING, False),
|
||||
# Complex type
|
||||
("ARRAY", ARRAY, None, GenericDataType.STRING, False),
|
||||
("MAP", MAP, None, GenericDataType.STRING, False),
|
||||
("STRUCT", STRUCT, None, GenericDataType.STRING, False),
|
||||
("array<varchar(65533)>", ARRAY, None, GenericDataType.STRING, False),
|
||||
("map<string,int>", MAP, None, GenericDataType.STRING, False),
|
||||
("struct<int,string>", STRUCT, None, GenericDataType.STRING, False),
|
||||
("json", JSON, None, GenericDataType.STRING, False),
|
||||
("bitmap", BITMAP, None, GenericDataType.STRING, False),
|
||||
("hll", HLL, None, GenericDataType.STRING, False),
|
||||
("percentile", PERCENTILE, None, GenericDataType.STRING, False),
|
||||
],
|
||||
)
|
||||
def test_get_column_spec(
|
||||
|
||||
Reference in New Issue
Block a user