diff --git a/ceilometer/tests/tempest/service/images/v1/images_client.py b/ceilometer/tests/tempest/service/images/v1/images_client.py
index dc07325..01cd1a7 100644
--- a/ceilometer/tests/tempest/service/images/v1/images_client.py
+++ b/ceilometer/tests/tempest/service/images/v1/images_client.py
@@ -109,8 +109,7 @@
     def _create_with_data(self, headers, data):
         resp, body_iter = self.http.raw_request('POST', '/v1/images',
                                                 headers=headers, body=data)
-        self._error_checker('POST', '/v1/images', headers, data, resp,
-                            body_iter)
+        self._error_checker(resp, body_iter)
         body = json.loads(''.join([c for c in body_iter]))
         return rest_client.ResponseBody(resp, body)
 
@@ -118,8 +117,7 @@
         url = '/v1/images/%s' % image_id
         resp, body_iter = self.http.raw_request('PUT', url, headers=headers,
                                                 body=data)
-        self._error_checker('PUT', url, headers, data,
-                            resp, body_iter)
+        self._error_checker(resp, body_iter)
         body = json.loads(''.join([c for c in body_iter]))
         return rest_client.ResponseBody(resp, body)
 
