mirror of
https://github.com/apache/superset.git
synced 2026-05-12 19:35:17 +00:00
perf(sqllab): reduce bootstrap data delay by queries (#27488)
(cherry picked from commit f4bdcb5743)
This commit is contained in:
committed by
Michael S. Molina
parent
35562198f8
commit
f52647ff48
@@ -461,6 +461,63 @@ class TestSqlLab(SupersetTestCase):
|
||||
|
||||
db.session.commit()
|
||||
|
||||
def test_query_api_can_access_sql_editor_id_associated_queries(self) -> None:
|
||||
"""
|
||||
Test query api with sql_editor_id filter to
|
||||
gamma and make sure sql editor associated queries show up.
|
||||
"""
|
||||
username = "gamma_sqllab"
|
||||
self.login("gamma_sqllab")
|
||||
|
||||
# create a tab
|
||||
data = {
|
||||
"queryEditor": json.dumps(
|
||||
{
|
||||
"title": "Untitled Query 1",
|
||||
"dbId": 1,
|
||||
"schema": None,
|
||||
"autorun": False,
|
||||
"sql": "SELECT ...",
|
||||
"queryLimit": 1000,
|
||||
}
|
||||
)
|
||||
}
|
||||
resp = self.get_json_resp("/tabstateview/", data=data)
|
||||
tab_state_id = resp["id"]
|
||||
# run a query in the created tab
|
||||
self.run_sql(
|
||||
"SELECT 1",
|
||||
"client_id_1",
|
||||
username=username,
|
||||
raise_on_error=True,
|
||||
sql_editor_id=str(tab_state_id),
|
||||
)
|
||||
self.run_sql(
|
||||
"SELECT 2",
|
||||
"client_id_2",
|
||||
username=username,
|
||||
raise_on_error=True,
|
||||
sql_editor_id=str(tab_state_id),
|
||||
)
|
||||
# run an orphan query (no tab)
|
||||
self.run_sql(
|
||||
"SELECT 3",
|
||||
"client_id_3",
|
||||
username=username,
|
||||
raise_on_error=True,
|
||||
)
|
||||
|
||||
arguments = {
|
||||
"filters": [
|
||||
{"col": "sql_editor_id", "opr": "eq", "value": str(tab_state_id)}
|
||||
]
|
||||
}
|
||||
url = f"/api/v1/query/?q={prison.dumps(arguments)}"
|
||||
self.assertEqual(
|
||||
{"SELECT 1", "SELECT 2"},
|
||||
{r.get("sql") for r in self.get_json_resp(url)["result"]},
|
||||
)
|
||||
|
||||
def test_query_admin_can_access_all_queries(self) -> None:
|
||||
"""
|
||||
Test query api with all_query_access perm added to
|
||||
|
||||
Reference in New Issue
Block a user