124 lines
5.2 KiB
YAML
124 lines
5.2 KiB
YAML
# Test launchpad bug https://bugs.launchpad.net/nova/+bug/1779818
|
|
|
|
fixtures:
|
|
- APIFixture
|
|
|
|
defaults:
|
|
request_headers:
|
|
x-auth-token: admin
|
|
accept: application/json
|
|
openstack-api-version: placement latest
|
|
|
|
tests:
|
|
|
|
- name: post a resource provider as alt_parent
|
|
POST: /resource_providers
|
|
request_headers:
|
|
content-type: application/json
|
|
data:
|
|
name: alt_parent
|
|
uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
status: 200
|
|
response_json_paths:
|
|
$.uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.name: alt_parent
|
|
$.parent_provider_uuid: null
|
|
$.generation: 0
|
|
|
|
- name: post another resource provider as parent
|
|
POST: /resource_providers
|
|
request_headers:
|
|
content-type: application/json
|
|
data:
|
|
name: parent
|
|
uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
status: 200
|
|
response_json_paths:
|
|
$.uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
$.name: parent
|
|
$.parent_provider_uuid: null
|
|
$.generation: 0
|
|
|
|
- name: post a child resource provider of the parent
|
|
POST: /resource_providers
|
|
request_headers:
|
|
content-type: application/json
|
|
data:
|
|
name: child
|
|
uuid: $ENVIRON['RP_UUID']
|
|
parent_provider_uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
status: 200
|
|
response_json_paths:
|
|
$.uuid: $ENVIRON['RP_UUID']
|
|
$.name: child
|
|
$.parent_provider_uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
$.generation: 0
|
|
|
|
# Let's validate that now we have two tree structures
|
|
# * alt_parent
|
|
# * parent
|
|
# |
|
|
# +-- child
|
|
- name: list all resource providers
|
|
GET: /resource_providers
|
|
response_json_paths:
|
|
$.resource_providers.`len`: 3
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].parent_provider_uuid: null
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].parent_provider_uuid: null
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].root_provider_uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].parent_provider_uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
|
|
# Let's re-parent the parent to the alternative parent
|
|
# so that we have only one tree.
|
|
# * alt_parent
|
|
# |
|
|
# +-- parent
|
|
# |
|
|
# +-- child
|
|
- name: update a parent of the parent
|
|
PUT: /resource_providers/$ENVIRON['PARENT_PROVIDER_UUID']
|
|
request_headers:
|
|
content-type: application/json
|
|
data:
|
|
name: parent
|
|
parent_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
status: 200
|
|
|
|
# Let's validate that we have only one root provider now
|
|
- name: list all resource providers updated
|
|
GET: /resource_providers
|
|
response_json_paths:
|
|
$.resource_providers.`len`: 3
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].parent_provider_uuid: null
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].parent_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].parent_provider_uuid: $ENVIRON['PARENT_PROVIDER_UUID']
|
|
|
|
- name: list all resource providers in a tree with the child
|
|
GET: /resource_providers?in_tree=$ENVIRON['RP_UUID']
|
|
response_json_paths:
|
|
$.resource_providers.`len`: 3
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
|
|
- name: list all resource providers in a tree with the parent
|
|
GET: /resource_providers?in_tree=$ENVIRON['PARENT_PROVIDER_UUID']
|
|
response_json_paths:
|
|
$.resource_providers.`len`: 3
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
|
|
- name: list all resource providers in a tree with the alternative parent
|
|
GET: /resource_providers?in_tree=$ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
response_json_paths:
|
|
$.resource_providers.`len`: 3
|
|
$.resource_providers[?uuid="$ENVIRON['RP_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['ALT_PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|
|
$.resource_providers[?uuid="$ENVIRON['PARENT_PROVIDER_UUID']"].root_provider_uuid: $ENVIRON['ALT_PARENT_PROVIDER_UUID']
|