diff options
25 files changed, 151 insertions, 1 deletions
diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.json b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.json new file mode 100644 index 000000000..63fc8738b --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.json @@ -0,0 +1,6 @@ +{ + "extra_specs": { + "key1": "value1", + "key2": "value2" + } +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.xml b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.xml new file mode 100644 index 000000000..95c1daab9 --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<extra_specs> + <key1>value1</key1> + <key2>value2</key2> +</extra_specs>
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.json b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.json new file mode 100644 index 000000000..63fc8738b --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.json @@ -0,0 +1,6 @@ +{ + "extra_specs": { + "key1": "value1", + "key2": "value2" + } +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.xml b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.xml new file mode 100644 index 000000000..06b01a9fc --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.xml @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_specs> + <key2>value2</key2> + <key1>value1</key1> +</extra_specs>
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.json b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.json new file mode 100644 index 000000000..e71755fe6 --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.json @@ -0,0 +1,3 @@ +{ + "key1": "value1" +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.xml b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.xml new file mode 100644 index 000000000..d57579ba6 --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.xml @@ -0,0 +1,2 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_spec key="key1">value1</extra_spec>
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.json b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.json new file mode 100644 index 000000000..63fc8738b --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.json @@ -0,0 +1,6 @@ +{ + "extra_specs": { + "key1": "value1", + "key2": "value2" + } +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.xml b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.xml new file mode 100644 index 000000000..06b01a9fc --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.xml @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_specs> + <key2>value2</key2> + <key1>value1</key1> +</extra_specs>
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.json b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.json new file mode 100644 index 000000000..a40d79e32 --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.json @@ -0,0 +1,3 @@ +{ + "key1": "new_value1" +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.xml b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.xml new file mode 100644 index 000000000..b7ae6732b --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> + <key1>new_value1</key1>
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.json b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.json new file mode 100644 index 000000000..a40d79e32 --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.json @@ -0,0 +1,3 @@ +{ + "key1": "new_value1" +}
\ No newline at end of file diff --git a/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.xml b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.xml new file mode 100644 index 000000000..13208ad7c --- /dev/null +++ b/doc/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.xml @@ -0,0 +1,2 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_spec key="key1">new_value1</extra_spec>
\ No newline at end of file diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.json.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.json.tpl new file mode 100644 index 000000000..dd858e76c --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.json.tpl @@ -0,0 +1,6 @@ +{ + "extra_specs": { + "key1": "%(value1)s", + "key2": "%(value2)s" + } +} diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.xml.tpl new file mode 100644 index 000000000..c94595cad --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-req.xml.tpl @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<extra_specs> + <key1>%(value1)s</key1> + <key2>%(value2)s</key2> +</extra_specs> diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.json.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.json.tpl new file mode 100644 index 000000000..dd858e76c --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.json.tpl @@ -0,0 +1,6 @@ +{ + "extra_specs": { + "key1": "%(value1)s", + "key2": "%(value2)s" + } +} diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.xml.tpl new file mode 100644 index 000000000..1008b5bb0 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-create-resp.xml.tpl @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_specs> + <key2>%(value2)s</key2> + <key1>%(value1)s</key1> +</extra_specs> diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.json.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.json.tpl new file mode 100644 index 000000000..adfa77008 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.json.tpl @@ -0,0 +1,3 @@ +{ + "key1": "%(value1)s" +} diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.xml.tpl new file mode 100644 index 000000000..e3de59a34 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-get-resp.xml.tpl @@ -0,0 +1,2 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_spec key="key1">%(value1)s</extra_spec> diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.json.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.json.tpl new file mode 100644 index 000000000..dd858e76c --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.json.tpl @@ -0,0 +1,6 @@ +{ + "extra_specs": { + "key1": "%(value1)s", + "key2": "%(value2)s" + } +} diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.xml.tpl new file mode 100644 index 000000000..1008b5bb0 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-list-resp.xml.tpl @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_specs> + <key2>%(value2)s</key2> + <key1>%(value1)s</key1> +</extra_specs> diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.json.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.json.tpl new file mode 100644 index 000000000..adfa77008 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.json.tpl @@ -0,0 +1,3 @@ +{ + "key1": "%(value1)s" +} diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.xml.tpl new file mode 100644 index 000000000..6421e5959 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-req.xml.tpl @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> + <key1>%(value1)s</key1> diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.json.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.json.tpl new file mode 100644 index 000000000..adfa77008 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.json.tpl @@ -0,0 +1,3 @@ +{ + "key1": "%(value1)s" +} diff --git a/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.xml.tpl b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.xml.tpl new file mode 100644 index 000000000..e3de59a34 --- /dev/null +++ b/nova/tests/integrated/api_samples/os-flavor-extra-specs/flavor-extra-specs-update-resp.xml.tpl @@ -0,0 +1,2 @@ +<?xml version='1.0' encoding='UTF-8'?> +<extra_spec key="key1">%(value1)s</extra_spec> diff --git a/nova/tests/integrated/test_api_samples.py b/nova/tests/integrated/test_api_samples.py index 080e4e92b..eafc31c61 100644 --- a/nova/tests/integrated/test_api_samples.py +++ b/nova/tests/integrated/test_api_samples.py @@ -377,7 +377,6 @@ class ApiSamplesTrap(ApiSampleTestBase): do_not_approve_additions.append('os-config-drive') do_not_approve_additions.append('os-create-server-ext') do_not_approve_additions.append('os-flavor-access') - do_not_approve_additions.append('os-flavor-extra-specs') do_not_approve_additions.append('os-floating-ip-dns') do_not_approve_additions.append('os-fping') do_not_approve_additions.append('os-hypervisors') @@ -2712,4 +2711,59 @@ class InstanceUsageAuditLogJsonTest(ApiSampleTestBase): class InstanceUsageAuditLogXmlTest(InstanceUsageAuditLogJsonTest): + ctype = "xml" + + +class FlavorExtraSpecsSampleJsonTests(ApiSampleTestBase): + extension_name = ("nova.api.openstack.compute.contrib.flavorextraspecs." + "Flavorextraspecs") + + def _flavor_extra_specs_create(self): + subs = {'value1': 'value1', + 'value2': 'value2' + } + response = self._do_post('flavors/1/os-extra_specs', + 'flavor-extra-specs-create-req', subs) + self.assertEqual(response.status, 200) + return self._verify_response('flavor-extra-specs-create-resp', + subs, response) + + def test_flavor_extra_specs_get(self): + subs = {'value1': 'value1'} + self._flavor_extra_specs_create() + response = self._do_get('flavors/1/os-extra_specs/key1') + self.assertEqual(response.status, 200) + return self._verify_response('flavor-extra-specs-get-resp', + subs, response) + + def test_flavor_extra_specs_list(self): + subs = {'value1': 'value1', + 'value2': 'value2' + } + self._flavor_extra_specs_create() + response = self._do_get('flavors/1/os-extra_specs') + self.assertEqual(response.status, 200) + return self._verify_response('flavor-extra-specs-list-resp', + subs, response) + + def test_flavor_extra_specs_create(self): + return self._flavor_extra_specs_create() + + def test_flavor_extra_specs_update(self): + subs = {'value1': 'new_value1'} + self._flavor_extra_specs_create() + response = self._do_put('flavors/1/os-extra_specs/key1', + 'flavor-extra-specs-update-req', subs) + self.assertEqual(response.status, 200) + return self._verify_response('flavor-extra-specs-update-resp', + subs, response) + + def test_flavor_extra_specs_delete(self): + self._flavor_extra_specs_create() + response = self._do_delete('flavors/1/os-extra_specs/key1') + self.assertEqual(response.status, 200) + self.assertEqual(response.read(), '') + + +class FlavorExtraSpecsSampleXmlTests(FlavorExtraSpecsSampleJsonTests): ctype = 'xml' |