mirror of https://github.com/apache/superset.git
chore: Reenable SQLite tests which leverage foreign key constraints et al. (#24605)
This commit is contained in:
parent
3a7d76cece
commit
77bd7cf1c6
|
@ -150,7 +150,9 @@ jobs:
|
||||||
SUPERSET_CONFIG: tests.integration_tests.superset_test_config
|
SUPERSET_CONFIG: tests.integration_tests.superset_test_config
|
||||||
REDIS_PORT: 16379
|
REDIS_PORT: 16379
|
||||||
SUPERSET__SQLALCHEMY_DATABASE_URI: |
|
SUPERSET__SQLALCHEMY_DATABASE_URI: |
|
||||||
sqlite:///${{ github.workspace }}/.temp/unittest.db
|
sqlite:///${{ github.workspace }}/.temp/superset.db?check_same_thread=true
|
||||||
|
SUPERSET__SQLALCHEMY_EXAMPLES_URI: |
|
||||||
|
sqlite:///${{ github.workspace }}/.temp/examples.db?check_same_thread=true
|
||||||
services:
|
services:
|
||||||
redis:
|
redis:
|
||||||
image: redis:7-alpine
|
image: redis:7-alpine
|
||||||
|
|
|
@ -114,10 +114,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
@pytest.fixture()
|
@pytest.fixture()
|
||||||
def create_virtual_datasets(self):
|
def create_virtual_datasets(self):
|
||||||
with self.create_app().app_context():
|
with self.create_app().app_context():
|
||||||
if backend() == "sqlite":
|
|
||||||
yield
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = []
|
datasets = []
|
||||||
admin = self.get_user("admin")
|
admin = self.get_user("admin")
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -140,10 +136,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
@pytest.fixture()
|
@pytest.fixture()
|
||||||
def create_datasets(self):
|
def create_datasets(self):
|
||||||
with self.create_app().app_context():
|
with self.create_app().app_context():
|
||||||
if backend() == "sqlite":
|
|
||||||
yield
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = []
|
datasets = []
|
||||||
admin = self.get_user("admin")
|
admin = self.get_user("admin")
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -192,8 +184,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset list
|
Dataset API: Test get dataset list
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
example_db = get_example_database()
|
example_db = get_example_database()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -232,8 +222,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset list gamma
|
Dataset API: Test get dataset list gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="gamma")
|
self.login(username="gamma")
|
||||||
uri = "api/v1/dataset/"
|
uri = "api/v1/dataset/"
|
||||||
|
@ -246,8 +234,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset list with database access
|
Dataset API: Test get dataset list with database access
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="gamma")
|
self.login(username="gamma")
|
||||||
|
|
||||||
|
@ -289,8 +275,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset related databases gamma
|
Dataset API: Test get dataset related databases gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
# Add main database access to gamma role
|
# Add main database access to gamma role
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -320,8 +304,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset item
|
Dataset API: Test get dataset item
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
table = self.get_energy_usage_dataset()
|
table = self.get_energy_usage_dataset()
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -385,8 +367,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset distinct schema
|
Dataset API: Test get dataset distinct schema
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
def pg_test_query_parameter(query_parameter, expected_response):
|
def pg_test_query_parameter(query_parameter, expected_response):
|
||||||
uri = f"api/v1/dataset/distinct/schema?q={prison.dumps(query_parameter)}"
|
uri = f"api/v1/dataset/distinct/schema?q={prison.dumps(query_parameter)}"
|
||||||
|
@ -459,8 +439,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset distinct not allowed
|
Dataset API: Test get dataset distinct not allowed
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
uri = "api/v1/dataset/distinct/table_name"
|
uri = "api/v1/dataset/distinct/table_name"
|
||||||
|
@ -471,8 +449,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset distinct with gamma
|
Dataset API: Test get dataset distinct with gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
|
||||||
|
@ -491,8 +467,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test get dataset info
|
Dataset API: Test get dataset info
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
uri = "api/v1/dataset/_info"
|
uri = "api/v1/dataset/_info"
|
||||||
|
@ -503,8 +477,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test info security
|
Dataset API: Test info security
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
params = {"keys": ["permissions"]}
|
params = {"keys": ["permissions"]}
|
||||||
|
@ -525,8 +497,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset item
|
Dataset API: Test create dataset item
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -572,8 +542,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset item with column normalization enabled
|
Dataset API: Test create dataset item with column normalization enabled
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -601,8 +569,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset item gamma
|
Dataset API: Test create dataset item gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="gamma")
|
self.login(username="gamma")
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -619,8 +585,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create item owner
|
Dataset API: Test create item owner
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
self.login(username="alpha")
|
self.login(username="alpha")
|
||||||
|
@ -647,8 +611,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset item owner invalid
|
Dataset API: Test create dataset item owner invalid
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
admin = self.get_user("admin")
|
admin = self.get_user("admin")
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -671,8 +633,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset validate table uniqueness
|
Dataset API: Test create dataset validate table uniqueness
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
energy_usage_ds = self.get_energy_usage_dataset()
|
energy_usage_ds = self.get_energy_usage_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -694,8 +654,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset with sql
|
Dataset API: Test create dataset with sql
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
energy_usage_ds = self.get_energy_usage_dataset()
|
energy_usage_ds = self.get_energy_usage_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -718,8 +676,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset with sql
|
Dataset API: Test create dataset with sql
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
energy_usage_ds = self.get_energy_usage_dataset()
|
energy_usage_ds = self.get_energy_usage_dataset()
|
||||||
self.login(username="alpha")
|
self.login(username="alpha")
|
||||||
|
@ -777,8 +733,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset validate database exists
|
Dataset API: Test create dataset validate database exists
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
dataset_data = {"database": 1000, "schema": "", "table_name": "birth_names"}
|
dataset_data = {"database": 1000, "schema": "", "table_name": "birth_names"}
|
||||||
|
@ -792,8 +746,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset validate table exists
|
Dataset API: Test create dataset validate table exists
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
example_db = get_example_database()
|
example_db = get_example_database()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -820,8 +772,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset validate view exists
|
Dataset API: Test create dataset validate view exists
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
mock_get_columns.return_value = [
|
mock_get_columns.return_value = [
|
||||||
{
|
{
|
||||||
|
@ -868,8 +818,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test create dataset sqlalchemy error
|
Dataset API: Test create dataset sqlalchemy error
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
mock_dao_create.side_effect = DAOCreateFailedError()
|
mock_dao_create.side_effect = DAOCreateFailedError()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -889,8 +837,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset item
|
Dataset API: Test update dataset item
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -908,8 +854,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset with override columns
|
Dataset API: Test update dataset with override columns
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
# Add default dataset
|
# Add default dataset
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
@ -947,8 +891,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset with override columns
|
Dataset API: Test update dataset with override columns
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
# Add default dataset
|
# Add default dataset
|
||||||
main_db = get_main_database()
|
main_db = get_main_database()
|
||||||
|
@ -997,8 +939,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset create column
|
Dataset API: Test update dataset create column
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
# create example dataset by Command
|
# create example dataset by Command
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
@ -1095,8 +1035,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset delete column
|
Dataset API: Test update dataset delete column
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
# create example dataset by Command
|
# create example dataset by Command
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
@ -1147,8 +1085,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset columns
|
Dataset API: Test update dataset columns
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
|
||||||
|
@ -1186,8 +1122,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset delete metric
|
Dataset API: Test update dataset delete metric
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
metrics_query = (
|
metrics_query = (
|
||||||
|
@ -1232,8 +1166,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset columns uniqueness
|
Dataset API: Test update dataset columns uniqueness
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
|
||||||
|
@ -1255,8 +1187,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset metric uniqueness
|
Dataset API: Test update dataset metric uniqueness
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
|
||||||
|
@ -1278,8 +1208,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset columns duplicate
|
Dataset API: Test update dataset columns duplicate
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
|
||||||
|
@ -1306,8 +1234,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset metric duplicate
|
Dataset API: Test update dataset metric duplicate
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
|
|
||||||
|
@ -1334,8 +1260,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset item gamma
|
Dataset API: Test update dataset item gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="gamma")
|
self.login(username="gamma")
|
||||||
|
@ -1350,8 +1274,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Tests that no username is returned
|
Dataset API: Tests that no username is returned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -1374,8 +1296,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Tests that no username is returned
|
Dataset API: Tests that no username is returned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -1397,8 +1317,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset item not owned
|
Dataset API: Test update dataset item not owned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="alpha")
|
self.login(username="alpha")
|
||||||
|
@ -1413,8 +1331,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset item owner invalid
|
Dataset API: Test update dataset item owner invalid
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -1429,8 +1345,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset uniqueness
|
Dataset API: Test update dataset uniqueness
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -1455,8 +1369,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test update dataset sqlalchemy error
|
Dataset API: Test update dataset sqlalchemy error
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
mock_dao_update.side_effect = DAOUpdateFailedError()
|
mock_dao_update.side_effect = DAOUpdateFailedError()
|
||||||
|
|
||||||
|
@ -1476,8 +1388,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset item
|
Dataset API: Test delete dataset item
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
view_menu = security_manager.find_view_menu(dataset.get_perm())
|
view_menu = security_manager.find_view_menu(dataset.get_perm())
|
||||||
|
@ -1496,8 +1406,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete item not owned
|
Dataset API: Test delete item not owned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="alpha")
|
self.login(username="alpha")
|
||||||
|
@ -1511,8 +1419,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete item not authorized
|
Dataset API: Test delete item not authorized
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="gamma")
|
self.login(username="gamma")
|
||||||
|
@ -1527,8 +1433,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset sqlalchemy error
|
Dataset API: Test delete dataset sqlalchemy error
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
mock_dao_delete.side_effect = DAODeleteFailedError()
|
mock_dao_delete.side_effect = DAODeleteFailedError()
|
||||||
|
|
||||||
|
@ -1547,8 +1451,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset column
|
Dataset API: Test delete dataset column
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
column_id = dataset.columns[0].id
|
column_id = dataset.columns[0].id
|
||||||
|
@ -1563,8 +1465,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset column not found
|
Dataset API: Test delete dataset column not found
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
non_id = self.get_nonexistent_numeric_id(TableColumn)
|
non_id = self.get_nonexistent_numeric_id(TableColumn)
|
||||||
|
@ -1587,8 +1487,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset column not owned
|
Dataset API: Test delete dataset column not owned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
column_id = dataset.columns[0].id
|
column_id = dataset.columns[0].id
|
||||||
|
@ -1604,8 +1502,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset column
|
Dataset API: Test delete dataset column
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
mock_dao_delete.side_effect = DAODeleteFailedError()
|
mock_dao_delete.side_effect = DAODeleteFailedError()
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
|
@ -1622,8 +1518,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset metric
|
Dataset API: Test delete dataset metric
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
test_metric = SqlMetric(
|
test_metric = SqlMetric(
|
||||||
|
@ -1643,8 +1537,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset metric not found
|
Dataset API: Test delete dataset metric not found
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
non_id = self.get_nonexistent_numeric_id(SqlMetric)
|
non_id = self.get_nonexistent_numeric_id(SqlMetric)
|
||||||
|
@ -1667,8 +1559,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset metric not owned
|
Dataset API: Test delete dataset metric not owned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
metric_id = dataset.metrics[0].id
|
metric_id = dataset.metrics[0].id
|
||||||
|
@ -1684,8 +1574,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test delete dataset metric
|
Dataset API: Test delete dataset metric
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
mock_dao_delete.side_effect = DAODeleteFailedError()
|
mock_dao_delete.side_effect = DAODeleteFailedError()
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
|
@ -1702,8 +1590,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test bulk delete dataset items
|
Dataset API: Test bulk delete dataset items
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = self.get_fixture_datasets()
|
datasets = self.get_fixture_datasets()
|
||||||
dataset_ids = [dataset.id for dataset in datasets]
|
dataset_ids = [dataset.id for dataset in datasets]
|
||||||
|
@ -1734,8 +1620,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test bulk delete item not owned
|
Dataset API: Test bulk delete item not owned
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = self.get_fixture_datasets()
|
datasets = self.get_fixture_datasets()
|
||||||
dataset_ids = [dataset.id for dataset in datasets]
|
dataset_ids = [dataset.id for dataset in datasets]
|
||||||
|
@ -1750,8 +1634,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test bulk delete item not found
|
Dataset API: Test bulk delete item not found
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = self.get_fixture_datasets()
|
datasets = self.get_fixture_datasets()
|
||||||
dataset_ids = [dataset.id for dataset in datasets]
|
dataset_ids = [dataset.id for dataset in datasets]
|
||||||
|
@ -1767,8 +1649,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test bulk delete item not authorized
|
Dataset API: Test bulk delete item not authorized
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = self.get_fixture_datasets()
|
datasets = self.get_fixture_datasets()
|
||||||
dataset_ids = [dataset.id for dataset in datasets]
|
dataset_ids = [dataset.id for dataset in datasets]
|
||||||
|
@ -1783,8 +1663,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test bulk delete item incorrect request
|
Dataset API: Test bulk delete item incorrect request
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
datasets = self.get_fixture_datasets()
|
datasets = self.get_fixture_datasets()
|
||||||
dataset_ids = [dataset.id for dataset in datasets]
|
dataset_ids = [dataset.id for dataset in datasets]
|
||||||
|
@ -1799,8 +1677,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test item refresh
|
Dataset API: Test item refresh
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
# delete a column
|
# delete a column
|
||||||
|
@ -1830,8 +1706,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test item refresh not found dataset
|
Dataset API: Test item refresh not found dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
max_id = db.session.query(func.max(SqlaTable.id)).scalar()
|
max_id = db.session.query(func.max(SqlaTable.id)).scalar()
|
||||||
|
|
||||||
|
@ -1844,8 +1718,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test item refresh not owned dataset
|
Dataset API: Test item refresh not owned dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.insert_default_dataset()
|
dataset = self.insert_default_dataset()
|
||||||
self.login(username="alpha")
|
self.login(username="alpha")
|
||||||
|
@ -1861,8 +1733,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test export dataset
|
Dataset API: Test export dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
birth_names_dataset = self.get_birth_names_dataset()
|
birth_names_dataset = self.get_birth_names_dataset()
|
||||||
# TODO: fix test for presto
|
# TODO: fix test for presto
|
||||||
|
@ -1896,8 +1766,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test export dataset not found
|
Dataset API: Test export dataset not found
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
max_id = db.session.query(func.max(SqlaTable.id)).scalar()
|
max_id = db.session.query(func.max(SqlaTable.id)).scalar()
|
||||||
# Just one does not exist and we get 404
|
# Just one does not exist and we get 404
|
||||||
|
@ -1912,8 +1780,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test export dataset has gamma
|
Dataset API: Test export dataset has gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
|
|
||||||
|
@ -1943,8 +1809,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test export dataset
|
Dataset API: Test export dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
birth_names_dataset = self.get_birth_names_dataset()
|
birth_names_dataset = self.get_birth_names_dataset()
|
||||||
# TODO: fix test for presto
|
# TODO: fix test for presto
|
||||||
|
@ -1967,8 +1831,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test export dataset not found
|
Dataset API: Test export dataset not found
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
# Just one does not exist and we get 404
|
# Just one does not exist and we get 404
|
||||||
argument = [-1, 1]
|
argument = [-1, 1]
|
||||||
|
@ -1983,8 +1845,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test export dataset has gamma
|
Dataset API: Test export dataset has gamma
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
|
|
||||||
|
@ -2003,8 +1863,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
Dataset API: Test get chart and dashboard count related to a dataset
|
Dataset API: Test get chart and dashboard count related to a dataset
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
table = self.get_birth_names_dataset()
|
table = self.get_birth_names_dataset()
|
||||||
|
@ -2019,8 +1877,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test related objects not found
|
Dataset API: Test related objects not found
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
max_id = db.session.query(func.max(SqlaTable.id)).scalar()
|
max_id = db.session.query(func.max(SqlaTable.id)).scalar()
|
||||||
# id does not exist and we get 404
|
# id does not exist and we get 404
|
||||||
|
@ -2042,8 +1898,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test custom dataset_is_null_or_empty filter for sql
|
Dataset API: Test custom dataset_is_null_or_empty filter for sql
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
arguments = {
|
arguments = {
|
||||||
"filters": [
|
"filters": [
|
||||||
|
@ -2078,8 +1932,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test import dataset
|
Dataset API: Test import dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
uri = "api/v1/dataset/import/"
|
uri = "api/v1/dataset/import/"
|
||||||
|
@ -2113,9 +1965,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|
||||||
def test_import_dataset_v0_export(self):
|
def test_import_dataset_v0_export(self):
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
num_datasets = db.session.query(SqlaTable).count()
|
num_datasets = db.session.query(SqlaTable).count()
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
|
@ -2146,8 +1995,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test import existing dataset
|
Dataset API: Test import existing dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
uri = "api/v1/dataset/import/"
|
uri = "api/v1/dataset/import/"
|
||||||
|
@ -2217,8 +2064,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test import invalid dataset
|
Dataset API: Test import invalid dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
uri = "api/v1/dataset/import/"
|
uri = "api/v1/dataset/import/"
|
||||||
|
@ -2270,8 +2115,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test import invalid dataset
|
Dataset API: Test import invalid dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
self.login(username="admin")
|
self.login(username="admin")
|
||||||
uri = "api/v1/dataset/import/"
|
uri = "api/v1/dataset/import/"
|
||||||
|
@ -2318,8 +2161,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test custom dataset_is_certified filter
|
Dataset API: Test custom dataset_is_certified filter
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
table_w_certification = SqlaTable(
|
table_w_certification = SqlaTable(
|
||||||
table_name="foo",
|
table_name="foo",
|
||||||
|
@ -2351,8 +2192,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test duplicate virtual dataset
|
Dataset API: Test duplicate virtual dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_virtual_datasets()[0]
|
dataset = self.get_fixture_virtual_datasets()[0]
|
||||||
|
|
||||||
|
@ -2379,8 +2218,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test duplicate physical dataset
|
Dataset API: Test duplicate physical dataset
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_datasets()[0]
|
dataset = self.get_fixture_datasets()[0]
|
||||||
|
|
||||||
|
@ -2395,8 +2232,6 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
"""
|
"""
|
||||||
Dataset API: Test duplicate dataset with existing name
|
Dataset API: Test duplicate dataset with existing name
|
||||||
"""
|
"""
|
||||||
if backend() == "sqlite":
|
|
||||||
return
|
|
||||||
|
|
||||||
dataset = self.get_fixture_virtual_datasets()[0]
|
dataset = self.get_fixture_virtual_datasets()[0]
|
||||||
|
|
||||||
|
@ -2507,9 +2342,10 @@ class TestDatasetApi(SupersetTestCase):
|
||||||
assert table.normalize_columns is False
|
assert table.normalize_columns is False
|
||||||
|
|
||||||
db.session.delete(table)
|
db.session.delete(table)
|
||||||
|
db.session.commit()
|
||||||
|
|
||||||
with examples_db.get_sqla_engine_with_context() as engine:
|
with examples_db.get_sqla_engine_with_context() as engine:
|
||||||
engine.execute("DROP TABLE test_create_sqla_table_api")
|
engine.execute("DROP TABLE test_create_sqla_table_api")
|
||||||
db.session.commit()
|
|
||||||
|
|
||||||
@pytest.mark.usefixtures(
|
@pytest.mark.usefixtures(
|
||||||
"load_energy_table_with_slice", "load_birth_names_dashboard_with_slices"
|
"load_energy_table_with_slice", "load_birth_names_dashboard_with_slices"
|
||||||
|
|
4
tox.ini
4
tox.ini
|
@ -35,7 +35,9 @@ setenv =
|
||||||
SUPERSET_HOME = {envtmpdir}
|
SUPERSET_HOME = {envtmpdir}
|
||||||
mysql: SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset?charset=utf8
|
mysql: SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset?charset=utf8
|
||||||
postgres: SUPERSET__SQLALCHEMY_DATABASE_URI = postgresql+psycopg2://superset:superset@localhost/test
|
postgres: SUPERSET__SQLALCHEMY_DATABASE_URI = postgresql+psycopg2://superset:superset@localhost/test
|
||||||
sqlite: SUPERSET__SQLALCHEMY_DATABASE_URI = sqlite:////{envtmpdir}/superset.db
|
sqlite:
|
||||||
|
SUPERSET__SQLALCHEMY_DATABASE_URI = sqlite:////{envtmpdir}/superset.db
|
||||||
|
SUPERSET__SQLALCHEMY_EXAMPLES_URI = sqlite:////{envtmpdir}/examples.db
|
||||||
mysql-presto: SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset?charset=utf8
|
mysql-presto: SUPERSET__SQLALCHEMY_DATABASE_URI = mysql://mysqluser:mysqluserpassword@localhost/superset?charset=utf8
|
||||||
# docker run -p 8080:8080 --name presto starburstdata/presto
|
# docker run -p 8080:8080 --name presto starburstdata/presto
|
||||||
mysql-presto: SUPERSET__SQLALCHEMY_EXAMPLES_URI = presto://localhost:8080/memory/default
|
mysql-presto: SUPERSET__SQLALCHEMY_EXAMPLES_URI = presto://localhost:8080/memory/default
|
||||||
|
|
Loading…
Reference in New Issue