mirror of
https://github.com/apache/superset.git
synced 2026-04-20 00:24:38 +00:00
fix(dashboard): Get dashboard by slug (#13352)
* refactor out id_or_slug filter logic * fix(dashboard): accept slug in place of id in url * remove unnecessary show fields * fixes and tests * linting * linter compliance * change requests * names
This commit is contained in:
committed by
GitHub
parent
94fc5d586e
commit
491fbd16f7
@@ -170,6 +170,32 @@ class TestDashboardApi(SupersetTestCase, ApiOwnersTestCaseMixin, InsertChartMixi
|
||||
db.session.delete(dashboard)
|
||||
db.session.commit()
|
||||
|
||||
@pytest.mark.usefixtures("create_dashboards")
|
||||
def get_dashboard_by_slug(self):
|
||||
self.login(username="admin")
|
||||
dashboard = self.dashboards[0]
|
||||
uri = f"api/v1/dashboard/{dashboard.slug}"
|
||||
response = self.get_assert_metric(uri, "get")
|
||||
self.assertEqual(response.status_code, 200)
|
||||
data = json.loads(response.data.decode("utf-8"))
|
||||
self.assertEqual(data["id"], dashboard.id)
|
||||
|
||||
@pytest.mark.usefixtures("create_dashboards")
|
||||
def get_dashboard_by_bad_slug(self):
|
||||
self.login(username="admin")
|
||||
dashboard = self.dashboards[0]
|
||||
uri = f"api/v1/dashboard/{dashboard.slug}-bad-slug"
|
||||
response = self.get_assert_metric(uri, "get")
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
@pytest.mark.usefixtures("create_dashboards")
|
||||
def get_dashboard_by_slug_not_allowed(self):
|
||||
self.login(username="gamma")
|
||||
dashboard = self.dashboards[0]
|
||||
uri = f"api/v1/dashboard/{dashboard.slug}"
|
||||
response = self.get_assert_metric(uri, "get")
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
@pytest.mark.usefixtures("create_dashboards")
|
||||
def test_get_dashboard_charts(self):
|
||||
"""
|
||||
@@ -242,6 +268,7 @@ class TestDashboardApi(SupersetTestCase, ApiOwnersTestCaseMixin, InsertChartMixi
|
||||
"id": dashboard.id,
|
||||
"css": "",
|
||||
"dashboard_title": "title",
|
||||
"datasources": [],
|
||||
"json_metadata": "",
|
||||
"owners": [
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user