From 28f0b01717f17ecc545a25f6deb0aa240e5aaf0d Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Tue, 14 May 2013 09:09:36 +0100 Subject: Fix response from snapshot create stub A change from Oleg highlighted that the current snapshot create stub is broken because it passes a full volume for the volume_id paramter. Fix the stub and the api_samples output, but also add unit test checks which would have caught this. Change-Id: Id006e3995c7696aa8f061a2b96123ea27e4b6d3f Co-authored-by: Oleg Bondarev --- .../os-volumes/snapshot-create-resp.json | 23 +--------------------- .../os-volumes/snapshot-create-resp.xml | 2 +- .../openstack/compute/contrib/test_snapshots.py | 4 ++++ nova/tests/api/openstack/fakes.py | 4 ++-- .../os-volumes/snapshot-create-resp.json.tpl | 23 +--------------------- .../os-volumes/snapshot-create-resp.xml.tpl | 2 +- 6 files changed, 10 insertions(+), 48 deletions(-) diff --git a/doc/api_samples/os-volumes/snapshot-create-resp.json b/doc/api_samples/os-volumes/snapshot-create-resp.json index 1a14bea01..a8dd57d84 100644 --- a/doc/api_samples/os-volumes/snapshot-create-resp.json +++ b/doc/api_samples/os-volumes/snapshot-create-resp.json @@ -6,27 +6,6 @@ "id": 100, "size": 100, "status": "available", - "volumeId": { - "attach_status": "attached", - "availability_zone": "fakeaz", - "created_at": "1999-01-01T01:01:01.000000", - "display_description": "displaydesc", - "display_name": "displayname", - "host": "fakehost", - "id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", - "instance_uuid": "fakeuuid", - "mountpoint": "/", - "name": "vol name", - "project_id": "fakeproject", - "size": 1, - "snapshot_id": null, - "status": "fakestatus", - "user_id": "fakeuser", - "volume_metadata": [], - "volume_type": { - "name": "vol_type_name" - }, - "volume_type_id": "fakevoltype" - } + "volumeId": "521752a6-acf6-4b2d-bc7a-119f9148cd8c" } } \ No newline at end of file diff --git a/doc/api_samples/os-volumes/snapshot-create-resp.xml b/doc/api_samples/os-volumes/snapshot-create-resp.xml index ad815f723..654bf3d34 100644 --- a/doc/api_samples/os-volumes/snapshot-create-resp.xml +++ b/doc/api_samples/os-volumes/snapshot-create-resp.xml @@ -1,2 +1,2 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/nova/tests/api/openstack/compute/contrib/test_snapshots.py b/nova/tests/api/openstack/compute/contrib/test_snapshots.py index a890abe6f..8e042adf8 100644 --- a/nova/tests/api/openstack/compute/contrib/test_snapshots.py +++ b/nova/tests/api/openstack/compute/contrib/test_snapshots.py @@ -67,6 +67,8 @@ class SnapshotApiTest(test.TestCase): snapshot['display_name']) self.assertEqual(resp_dict['snapshot']['displayDescription'], snapshot['display_description']) + self.assertEqual(resp_dict['snapshot']['volumeId'], + snapshot['volume_id']) def test_snapshot_create_force(self): snapshot = {"volume_id": 12, @@ -88,6 +90,8 @@ class SnapshotApiTest(test.TestCase): snapshot['display_name']) self.assertEqual(resp_dict['snapshot']['displayDescription'], snapshot['display_description']) + self.assertEqual(resp_dict['snapshot']['volumeId'], + snapshot['volume_id']) # Test invalid force paramter snapshot = {"volume_id": 12, diff --git a/nova/tests/api/openstack/fakes.py b/nova/tests/api/openstack/fakes.py index bf7c4d0d4..0b1ba5a6c 100644 --- a/nova/tests/api/openstack/fakes.py +++ b/nova/tests/api/openstack/fakes.py @@ -601,8 +601,8 @@ def stub_snapshot(id, **kwargs): return snapshot -def stub_snapshot_create(self, context, volume_id, name, description): - return stub_snapshot(100, volume_id=volume_id, display_name=name, +def stub_snapshot_create(self, context, volume, name, description): + return stub_snapshot(100, volume_id=volume['id'], display_name=name, display_description=description) diff --git a/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.json.tpl b/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.json.tpl index 73cd02d9d..ddffd97a3 100644 --- a/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.json.tpl +++ b/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.json.tpl @@ -6,27 +6,6 @@ "id": 100, "size": 100, "status": "available", - "volumeId": { - "attach_status": "attached", - "availability_zone": "fakeaz", - "created_at": "%(timestamp)s", - "display_description": "displaydesc", - "display_name": "displayname", - "host": "fakehost", - "id": "%(uuid)s", - "instance_uuid": "fakeuuid", - "mountpoint": "/", - "name": "vol name", - "project_id": "fakeproject", - "size": 1, - "snapshot_id": null, - "status": "fakestatus", - "user_id": "fakeuser", - "volume_metadata": [], - "volume_type": { - "name": "vol_type_name" - }, - "volume_type_id": "fakevoltype" - } + "volumeId": "%(uuid)s" } } diff --git a/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.xml.tpl b/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.xml.tpl index aa713311f..d75ae7ddd 100644 --- a/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.xml.tpl +++ b/nova/tests/integrated/api_samples/os-volumes/snapshot-create-resp.xml.tpl @@ -1,2 +1,2 @@ - + -- cgit