From 77e14ce0bcca52501b2330528a29d40f537759c6 Mon Sep 17 00:00:00 2001 From: Michael Haas Date: Wed, 5 Aug 2020 18:23:01 +0200 Subject: [PATCH 1/2] Expose Dataset validationMessage in DatasetValidationFailed Tell the user what exactly went wrong. Closes #33. --- sap/aibus/dar/client/data_manager_client.py | 7 +++++-- tests/sap/aibus/dar/client/test_data_manager_client.py | 9 +++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/sap/aibus/dar/client/data_manager_client.py b/sap/aibus/dar/client/data_manager_client.py index 994a62b..32b7b9f 100644 --- a/sap/aibus/dar/client/data_manager_client.py +++ b/sap/aibus/dar/client/data_manager_client.py @@ -270,8 +270,11 @@ def polling_function() -> dict: raise new_exception from exception if self.is_dataset_validation_failed(response): - msg = "Validation for Dataset '{}' failed with status: '{}'".format( - response["id"], response["status"] + msg = ( + "Validation for Dataset '{}' failed with status '{}' and" + " validation message: '{}'".format( + response["id"], response["status"], response["validationMessage"] + ) ) self.log.error(msg) raise DatasetValidationFailed(msg) diff --git a/tests/sap/aibus/dar/client/test_data_manager_client.py b/tests/sap/aibus/dar/client/test_data_manager_client.py index 0208efd..08a398a 100644 --- a/tests/sap/aibus/dar/client/test_data_manager_client.py +++ b/tests/sap/aibus/dar/client/test_data_manager_client.py @@ -456,6 +456,9 @@ def test_wait_for_validation_raises_if_validation_fails(self): dataset_response = self._make_dataset_response(bad_dataset_state) + if bad_dataset_state == "VALIDATION_FAILED": + dataset_response["validationMessage"] = "Detailed Description" + client.session.get_from_endpoint.return_value.json.side_effect = [ dataset_response ] @@ -466,8 +469,10 @@ def test_wait_for_validation_raises_if_validation_fails(self): ) expected_message = ( "Validation for Dataset " - "'{}' failed with status: '{}'".format( - dataset_response["id"], bad_dataset_state + "'{}' failed with status '{}' and validation message: '{}'".format( + dataset_response["id"], + bad_dataset_state, + dataset_response["validationMessage"], ) ) From befcb0564ef2cf348f46dfdcb04061d30e117f27 Mon Sep 17 00:00:00 2001 From: Michael Haas Date: Wed, 5 Aug 2020 18:27:04 +0200 Subject: [PATCH 2/2] Update CHANGELOG --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 23cdc12..4859204 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,7 +20,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed * Log message missing model deployment ID [#59] +* Expose a Dataset's `validationMessage` in `DatasetValidationFailed` [#33], [#69] +[#33]: https://github.com/SAP/data-attribute-recommendation-python-sdk/issues/33 [#46]: https://github.com/SAP/data-attribute-recommendation-python-sdk/issues/46 [#58]: https://github.com/SAP/data-attribute-recommendation-python-sdk/pull/58 [#59]: https://github.com/SAP/data-attribute-recommendation-python-sdk/pull/59 @@ -28,6 +30,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [#63]: https://github.com/SAP/data-attribute-recommendation-python-sdk/pull/63 [#64]: https://github.com/SAP/data-attribute-recommendation-python-sdk/pull/64 [#66]: https://github.com/SAP/data-attribute-recommendation-python-sdk/pull/66 +[#69]: https://github.com/SAP/data-attribute-recommendation-python-sdk/pull/69 ## [0.6.8]