From e319a7f4854ca04adafb015660ca7c09c509e3ef Mon Sep 17 00:00:00 2001 From: Ashish Gupta Date: Tue, 27 Jan 2015 21:55:39 -0800 Subject: [PATCH] Separate Forbidden exception from Unauthorized Closes-Bug:#1415143 Change-Id: I890498b2df6ae8d8f689537c8d6da1b5c06c2bd6 --- tempest_lib/common/rest_client.py | 5 ++++- tempest_lib/exceptions.py | 4 ++++ tempest_lib/tests/test_rest_client.py | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/tempest_lib/common/rest_client.py b/tempest_lib/common/rest_client.py index 683efa5..aa003bd 100644 --- a/tempest_lib/common/rest_client.py +++ b/tempest_lib/common/rest_client.py @@ -423,9 +423,12 @@ class RestClient(object): else: raise exceptions.InvalidContentType(str(resp.status)) - if resp.status == 401 or resp.status == 403: + if resp.status == 401: raise exceptions.Unauthorized(resp_body) + if resp.status == 403: + raise exceptions.Forbidden(resp_body) + if resp.status == 404: raise exceptions.NotFound(resp_body) diff --git a/tempest_lib/exceptions.py b/tempest_lib/exceptions.py index d97d158..fbf9ee0 100644 --- a/tempest_lib/exceptions.py +++ b/tempest_lib/exceptions.py @@ -62,6 +62,10 @@ class Unauthorized(RestClientException): message = 'Unauthorized' +class Forbidden(RestClientException): + message = "Forbidden" + + class TimeoutException(RestClientException): message = "Request timed out" diff --git a/tempest_lib/tests/test_rest_client.py b/tempest_lib/tests/test_rest_client.py index dc819d0..b48c156 100644 --- a/tempest_lib/tests/test_rest_client.py +++ b/tempest_lib/tests/test_rest_client.py @@ -315,7 +315,7 @@ class TestRestClientErrorCheckerJSON(base.TestCase): **self.set_data("401")) def test_response_403(self): - self.assertRaises(exceptions.Unauthorized, + self.assertRaises(exceptions.Forbidden, self.rest_client._error_checker, **self.set_data("403"))