diff options
| author | Giampaolo Lauria <lauria@us.ibm.com> | 2012-12-07 08:55:15 -0500 |
|---|---|---|
| committer | Giampaolo Lauria <lauria@us.ibm.com> | 2012-12-08 14:11:15 -0500 |
| commit | 797e9dc50f4e0a326e508ebddeb07b6b3721c8dc (patch) | |
| tree | 121dfee1de28a3ef93dbaba4fcfad02fe83f3956 | |
| parent | 45a1878ef6e7b1b1e7024194111a7c74bd1fd9c0 (diff) | |
| download | nova-797e9dc50f4e0a326e508ebddeb07b6b3721c8dc.tar.gz nova-797e9dc50f4e0a326e508ebddeb07b6b3721c8dc.tar.xz nova-797e9dc50f4e0a326e508ebddeb07b6b3721c8dc.zip | |
Added sample tests to FlavorManage API.
Partially implements blueprint nova-api-samples
Fixes bug 1070163
Change-Id: Ib838adf0c21f3eee6c52cd8e1942c96ae89cca98
9 files changed, 127 insertions, 0 deletions
diff --git a/doc/api_samples/os-flavor-manage/flavor-create-post-req.json b/doc/api_samples/os-flavor-manage/flavor-create-post-req.json new file mode 100644 index 000000000..9c5661cdb --- /dev/null +++ b/doc/api_samples/os-flavor-manage/flavor-create-post-req.json @@ -0,0 +1,13 @@ +{ + "flavor": { + "name": "test_flavor", + "ram": 1024, + "vcpus": 2, + "disk": 10, + "id": "10", + "os-flavor-access:is_public": true, + "rxtx_factor": 1, + "OS-FLV-EXT-DATA:ephemeral": 0, + "swap": 0 + } +} diff --git a/doc/api_samples/os-flavor-manage/flavor-create-post-req.xml b/doc/api_samples/os-flavor-manage/flavor-create-post-req.xml new file mode 100644 index 000000000..2018acb0f --- /dev/null +++ b/doc/api_samples/os-flavor-manage/flavor-create-post-req.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<flavor> + <name>test_flavor</name> + <ram>1024</ram> + <vcpus>2</vcpus> + <disk>10</disk> + <id>10</id> + <rxtx_factor>1</rxtx_factor> + <swap>0</swap> +</flavor> diff --git a/doc/api_samples/os-flavor-manage/flavor-create-post-resp.json b/doc/api_samples/os-flavor-manage/flavor-create-post-resp.json new file mode 100644 index 000000000..9280b047d --- /dev/null +++ b/doc/api_samples/os-flavor-manage/flavor-create-post-resp.json @@ -0,0 +1,19 @@ +{ + "flavor": { + "disk": 10, + "id": "10", + "links": [ + { + "href": "http://openstack.example.com/v2/openstack/flavors/10", + "rel": "self" + }, + { + "href": "http://openstack.example.com/openstack/flavors/10", + "rel": "bookmark" + } + ], + "name": "test_flavor", + "ram": 1024, + "vcpus": 2 + } +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-manage/flavor-create-post-resp.xml b/doc/api_samples/os-flavor-manage/flavor-create-post-resp.xml new file mode 100644 index 000000000..e213ddb31 --- /dev/null +++ b/doc/api_samples/os-flavor-manage/flavor-create-post-resp.xml @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='UTF-8'?> +<flavor xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" disk="10" vcpus="2" ram="1024" name="test_flavor" id="10"> + <atom:link href="http://openstack.example.com/v2/openstack/flavors/10" rel="self"/> + <atom:link href="http://openstack.example.com/openstack/flavors/10" rel="bookmark"/> +</flavor>
\ No newline at end of file diff --git a/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-req.json.tpl b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-req.json.tpl new file mode 100644 index 000000000..9ff3957b9 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-req.json.tpl @@ -0,0 +1,13 @@ +{ + "flavor": { + "name": "%(flavor_name)s", + "ram": 1024, + "vcpus": 2, + "disk": 10, + "id": "%(flavor_id)s", + "os-flavor-access:is_public": true, + "rxtx_factor": 1, + "OS-FLV-EXT-DATA:ephemeral": 0, + "swap": 0 + } +} diff --git a/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-req.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-req.xml.tpl new file mode 100644 index 000000000..6b03dc2f9 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-req.xml.tpl @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<flavor> + <name>%(flavor_name)s</name> + <ram>1024</ram> + <vcpus>2</vcpus> + <disk>10</disk> + <id>%(flavor_id)s</id> + <rxtx_factor>1</rxtx_factor> + <swap>0</swap> +</flavor> diff --git a/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-resp.json.tpl b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-resp.json.tpl new file mode 100644 index 000000000..ae0ce80ba --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-resp.json.tpl @@ -0,0 +1,19 @@ +{ + "flavor": { + "disk": 10, + "id": "%(flavor_id)s", + "links": [ + { + "href": "%(host)s/v2/openstack/flavors/%(flavor_id)s", + "rel": "self" + }, + { + "href": "%(host)s/openstack/flavors/%(flavor_id)s", + "rel": "bookmark" + } + ], + "name": "%(flavor_name)s", + "ram": 1024, + "vcpus": 2 + } +} diff --git a/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-resp.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-resp.xml.tpl new file mode 100644 index 000000000..156ef215e --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-manage/flavor-create-post-resp.xml.tpl @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='UTF-8'?> +<flavor xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://docs.openstack.org/compute/api/v1.1" disk="10" vcpus="2" ram="1024" name="%(flavor_name)s" id="%(flavor_id)s"> + <atom:link href="%(host)s/v2/openstack/flavors/%(flavor_id)s" rel="self"/> + <atom:link href="%(host)s/openstack/flavors/%(flavor_id)s" rel="bookmark"/> +</flavor> diff --git a/nova/tests/integrated/test_api_samples.py b/nova/tests/integrated/test_api_samples.py index 4142e058f..b864b84fa 100644 --- a/nova/tests/integrated/test_api_samples.py +++ b/nova/tests/integrated/test_api_samples.py @@ -1852,3 +1852,36 @@ class ExtendedStatusSampleJsonTests(ServersSampleBase): class ExtendedStatusSampleXmlTests(ExtendedStatusSampleJsonTests): ctype = 'xml' + + +class FlavorManageSampleJsonTests(ApiSampleTestBase): + extension_name = ("nova.api.openstack.compute.contrib.flavormanage." + "Flavormanage") + + def _create_flavor(self): + """Create a flavor""" + subs = { + 'flavor_id': 10, + 'flavor_name': "test_flavor" + } + response = self._do_post("flavors", + "flavor-create-post-req", + subs) + self.assertEqual(response.status, 200) + subs.update(self._get_regexes()) + return self._verify_response("flavor-create-post-resp", subs, response) + + def test_create_flavor(self): + """Get api sample to create a flavor""" + self._create_flavor() + + def test_delete_flavor(self): + """Get api sample to delete a flavor""" + self._create_flavor() + response = self._do_delete("flavors/10") + self.assertEqual(response.status, 202) + self.assertEqual(response.read(), '') + + +class FlavorManageSampleXmlTests(FlavorManageSampleJsonTests): + ctype = "xml" |
