From 6023a2233e8b13e672a1409b5c96bc4a53d5d114 Mon Sep 17 00:00:00 2001 From: Lena Novokshonova Date: Fri, 6 Mar 2015 13:14:52 +0400 Subject: [PATCH] Fix response POST /v2/meters/(meter_name) to 201 status When making a POST to add a sample to a meter at /v2/meters/something the response is 200. It should be 201. This patchset fixes it. Closes-bug: #1428202 Change-Id: I0a938f023c3bc0267d0b1566ab689786ea0e41b0 --- ceilometer/api/controllers/v2/meters.py | 2 +- ceilometer/tests/api/v2/test_post_samples_scenarios.py | 6 +++--- ceilometer/tests/gabbi/gabbits/clean-samples.yaml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ceilometer/api/controllers/v2/meters.py b/ceilometer/api/controllers/v2/meters.py index dd7a0f53c..66de4823d 100644 --- a/ceilometer/api/controllers/v2/meters.py +++ b/ceilometer/api/controllers/v2/meters.py @@ -291,7 +291,7 @@ class MeterController(rest.RestController): for e in pecan.request.storage_conn.get_samples(f, limit=limit) ] - @wsme_pecan.wsexpose([OldSample], body=[OldSample]) + @wsme_pecan.wsexpose([OldSample], body=[OldSample], status_code=201) def post(self, samples): """Post a list of new Samples to Telemetry. diff --git a/ceilometer/tests/api/v2/test_post_samples_scenarios.py b/ceilometer/tests/api/v2/test_post_samples_scenarios.py index c10da44ed..12f5c62cf 100644 --- a/ceilometer/tests/api/v2/test_post_samples_scenarios.py +++ b/ceilometer/tests/api/v2/test_post_samples_scenarios.py @@ -248,7 +248,7 @@ class TestPostSamples(v2.FunctionalTest, data = self.post_json('/meters/my_counter_name/', s1, headers={"X-Roles": "admin"}) - self.assertEqual(200, data.status_int) + self.assertEqual(201, data.status_int) for x, s in enumerate(s1): # source is modified to include the project_id. s['source'] = '%s:%s' % (s['project_id'], @@ -296,7 +296,7 @@ class TestPostSamples(v2.FunctionalTest, 'name2': 'value2'}}] data = self.post_json('/meters/my_counter_name/', s1, expect_errors=True) - self.assertEqual(200, data.status_int) + self.assertEqual(201, data.status_int) for x, s in enumerate(s1): # source is modified to include the project_id. s['source'] = '%s:%s' % ( @@ -332,7 +332,7 @@ class TestPostSamples(v2.FunctionalTest, 'X-User-Id': user_id, }) - self.assertEqual(200, data.status_int) + self.assertEqual(201, data.status_int) for x, s in enumerate(s1): # source is modified to include the project_id. s['source'] = '%s:%s' % (project_id, diff --git a/ceilometer/tests/gabbi/gabbits/clean-samples.yaml b/ceilometer/tests/gabbi/gabbits/clean-samples.yaml index e0054dd6f..e9547fc00 100644 --- a/ceilometer/tests/gabbi/gabbits/clean-samples.yaml +++ b/ceilometer/tests/gabbi/gabbits/clean-samples.yaml @@ -31,7 +31,7 @@ tests: response_json_paths: $.[0].counter_name: apples - status: 200 + status: 201 response_headers: content-type: application/json; charset=UTF-8