mirror of
https://github.com/apache/superset.git
synced 2024-09-06 22:07:34 -04:00
fix: deactivate embedding on a dashboard (#19626)
* fix tests * commit it properly * unnecessary commit, correct type in docstring * unused import
This commit is contained in:
parent
06ec88eb99
commit
ae70212df3
@ -175,7 +175,7 @@ class BaseDAO:
|
|||||||
def delete(cls, model: Model, commit: bool = True) -> Model:
|
def delete(cls, model: Model, commit: bool = True) -> Model:
|
||||||
"""
|
"""
|
||||||
Generic delete a model
|
Generic delete a model
|
||||||
:raises: DAOCreateFailedError
|
:raises: DAODeleteFailedError
|
||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
db.session.delete(model)
|
db.session.delete(model)
|
||||||
|
@ -1191,5 +1191,6 @@ class DashboardRestApi(BaseSupersetModelRestApi):
|
|||||||
500:
|
500:
|
||||||
$ref: '#/components/responses/500'
|
$ref: '#/components/responses/500'
|
||||||
"""
|
"""
|
||||||
dashboard.embedded = []
|
for embedded in dashboard.embedded:
|
||||||
|
DashboardDAO.delete(embedded)
|
||||||
return self.response(200, message="OK")
|
return self.response(200, message="OK")
|
||||||
|
@ -1796,6 +1796,8 @@ class TestDashboardApi(SupersetTestCase, ApiOwnersTestCaseMixin, InsertChartMixi
|
|||||||
self.assertNotEqual(result["uuid"], "")
|
self.assertNotEqual(result["uuid"], "")
|
||||||
self.assertEqual(result["allowed_domains"], allowed_domains)
|
self.assertEqual(result["allowed_domains"], allowed_domains)
|
||||||
|
|
||||||
|
db.session.expire_all()
|
||||||
|
|
||||||
# get returns value
|
# get returns value
|
||||||
resp = self.get_assert_metric(uri, "get_embedded")
|
resp = self.get_assert_metric(uri, "get_embedded")
|
||||||
self.assertEqual(resp.status_code, 200)
|
self.assertEqual(resp.status_code, 200)
|
||||||
@ -1810,9 +1812,13 @@ class TestDashboardApi(SupersetTestCase, ApiOwnersTestCaseMixin, InsertChartMixi
|
|||||||
# put succeeds and returns value
|
# put succeeds and returns value
|
||||||
resp = self.post_assert_metric(uri, {"allowed_domains": []}, "set_embedded")
|
resp = self.post_assert_metric(uri, {"allowed_domains": []}, "set_embedded")
|
||||||
self.assertEqual(resp.status_code, 200)
|
self.assertEqual(resp.status_code, 200)
|
||||||
|
result = json.loads(resp.data.decode("utf-8"))["result"]
|
||||||
|
self.assertEqual(resp.status_code, 200)
|
||||||
self.assertIsNotNone(result["uuid"])
|
self.assertIsNotNone(result["uuid"])
|
||||||
self.assertNotEqual(result["uuid"], "")
|
self.assertNotEqual(result["uuid"], "")
|
||||||
self.assertEqual(result["allowed_domains"], allowed_domains)
|
self.assertEqual(result["allowed_domains"], [])
|
||||||
|
|
||||||
|
db.session.expire_all()
|
||||||
|
|
||||||
# get returns changed value
|
# get returns changed value
|
||||||
resp = self.get_assert_metric(uri, "get_embedded")
|
resp = self.get_assert_metric(uri, "get_embedded")
|
||||||
@ -1825,6 +1831,8 @@ class TestDashboardApi(SupersetTestCase, ApiOwnersTestCaseMixin, InsertChartMixi
|
|||||||
resp = self.delete_assert_metric(uri, "delete_embedded")
|
resp = self.delete_assert_metric(uri, "delete_embedded")
|
||||||
self.assertEqual(resp.status_code, 200)
|
self.assertEqual(resp.status_code, 200)
|
||||||
|
|
||||||
|
db.session.expire_all()
|
||||||
|
|
||||||
# get returns 404
|
# get returns 404
|
||||||
resp = self.get_assert_metric(uri, "get_embedded")
|
resp = self.get_assert_metric(uri, "get_embedded")
|
||||||
self.assertEqual(resp.status_code, 404)
|
self.assertEqual(resp.status_code, 404)
|
||||||
|
Loading…
Reference in New Issue
Block a user