diff --git a/warden3/warden_server/warden_server.py b/warden3/warden_server/warden_server.py index e20d2d7adb59ab111296e5b2a7f9fdfea80cd9e2..3446bfe6c3e042c5d4850e19008a85d9e73fd99d 100755 --- a/warden3/warden_server/warden_server.py +++ b/warden3/warden_server/warden_server.py @@ -47,7 +47,7 @@ class Error(Exception): def get_http_err_msg(self): try: err = self.errors[0]["error"] - msg = self.errors[0]["message"] + msg = self.errors[0]["message"].replace("\n", " ") except (IndexError, KeyError): err = 500 msg = "There's NO self-destruction button! Ah, you've just found it..." @@ -57,7 +57,7 @@ class Error(Exception): # errors not same, round to basic err code (400, 500) # and use the highest one err = max(err//100, next_err//100)*100 - next_msg = e.get("message", "Unknown error") + next_msg = e.get("message", "Unknown error").replace("\n", " ") if msg != next_msg: msg = "Multiple errors" return err, msg @@ -430,11 +430,14 @@ class JSONSchemaValidator(NoValidator): res = [] for error in sorted(self.validator.iter_errors(event), key=sortkey): - res.append({"error": 460, - "message": "Validation error: key \"%s\", value \"%s\", expected - %s" % ( + res.append({ + "error": 460, + "message": "Validation error: key \"%s\", value \"%s\"" % ( "/".join(str(v) for v in error.path), - error.instance, - error.schema.get('description', 'no additional info'))}) + error.instance + ), + "expected": error.schema.get('description', 'no additional info') + }) return res