Skip to content

Commit

Permalink
chore(chart-data): add post processing error message to response (apa…
Browse files Browse the repository at this point in the history
  • Loading branch information
villebro committed Apr 19, 2023
1 parent 44557f5 commit 306fb22
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 1 deletion.
2 changes: 1 addition & 1 deletion superset/common/query_context_processor.py
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@ def get_query_result(self, query_object: QueryObject) -> QueryResult:
try:
df = query_object.exec_post_processing(df)
except InvalidPostProcessingError as ex:
raise QueryObjectValidationError from ex
raise QueryObjectValidationError(ex.message) from ex

result.df = df
result.query = query
Expand Down
27 changes: 27 additions & 0 deletions tests/integration_tests/charts/data/api_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -481,6 +481,33 @@ def test_chart_data_prophet(self):
self.assertIn("sum__num__yhat_lower", row)
self.assertEqual(result["rowcount"], 47)

@pytest.mark.usefixtures("load_birth_names_dashboard_with_slices")
def test_chart_data_invalid_post_processing(self):
"""
Chart data API: Ensure incorrect post processing returns correct response
"""
query_context = self.query_context_payload
query = query_context["queries"][0]
query["columns"] = ["name", "gender"]
query["post_processing"] = [
{
"operation": "pivot",
"options": {
"drop_missing_columns": False,
"columns": ["gender"],
"index": ["name"],
"aggregates": {},
},
},
]
rv = self.post_assert_metric(CHART_DATA_URI, query_context, "data")
assert rv.status_code == 400
data = json.loads(rv.data.decode("utf-8"))
assert (
data["message"]
== "Error: Pivot operation must include at least one aggregate"
)

@pytest.mark.usefixtures("load_birth_names_dashboard_with_slices")
def test_with_query_result_type_and_non_existent_filter__filter_omitted(self):
self.query_context_payload["queries"][0]["filters"] = [
Expand Down

0 comments on commit 306fb22

Please sign in to comment.