def test_get_cached_chart_screenshot(self): """ Thumbnails: Simple get cached chart screenshot """ chart = db.session.query(Slice).all()[0] # Cache a test "image" screenshot = ChartScreenshot(model_id=chart.id) thumbnail_cache.set(screenshot.cache_key, self.mock_image) self.login(username="******") uri = f"api/v1/chart/{chart.id}/thumbnail/{chart.digest}/" rv = self.client.get(uri) self.assertEqual(rv.status_code, 200) self.assertEqual(rv.data, self.mock_image)
def test_get_cached_dashboard_screenshot(self): """ Thumbnails: Simple get cached dashboard screenshot """ dashboard = db.session.query(Dashboard).all()[0] # Cache a test "image" screenshot = DashboardScreenshot(model_id=dashboard.id) thumbnail_cache.set(screenshot.cache_key, self.mock_image) self.login(username="******") uri = f"api/v1/dashboard/{dashboard.id}/thumbnail/{dashboard.digest}/" rv = self.client.get(uri) self.assertEqual(rv.status_code, 200) self.assertEqual(rv.data, self.mock_image)
def test_get_cached_chart_wrong_digest(self): """ Thumbnails: Simple get chart with wrong digest """ chart = db.session.query(Slice).all()[0] chart_url = get_url_path("Superset.slice", slice_id=chart.id, standalone="true") # Cache a test "image" screenshot = ChartScreenshot(chart_url, chart.digest) thumbnail_cache.set(screenshot.cache_key, self.mock_image) self.login(username="******") uri = f"api/v1/chart/{chart.id}/thumbnail/1234/" rv = self.client.get(uri) self.assertEqual(rv.status_code, 302) self.assertRedirects(rv, f"api/v1/chart/{chart.id}/thumbnail/{chart.digest}/")
def test_get_cached_dashboard_wrong_digest(self): """ Thumbnails: Simple get dashboard with wrong digest """ dashboard = db.session.query(Dashboard).all()[0] dashboard_url = get_url_path("Superset.dashboard", dashboard_id=dashboard.id) # Cache a test "image" screenshot = DashboardScreenshot(dashboard_url, dashboard.digest) thumbnail_cache.set(screenshot.cache_key, self.mock_image) self.login(username="******") uri = f"api/v1/dashboard/{dashboard.id}/thumbnail/1234/" rv = self.client.get(uri) self.assertEqual(rv.status_code, 302) self.assertRedirects( rv, f"api/v1/dashboard/{dashboard.id}/thumbnail/{dashboard.digest}/" )