chore: Reenable SQLite tests which leverage foreign key constraints et al. (#24605)

This commit is contained in:
John Bodley 2024-01-09 06:33:47 +13:00 committed by GitHub
parent 3a7d76cece
commit 77bd7cf1c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 168 deletions

View File

@ -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

View File

@ -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"

View File

@ -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