aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBin Sun <bins@vmware.com>2017-09-27 14:57:21 +0800
committerBin Sun <bins@vmware.com>2017-09-27 15:00:08 +0800
commit102cee6271799872a6d56314e8dc44b3d591a330 (patch)
tree898ebb2ae29ef24fbede4d437804dda67c14022d
parent8bdde5264235b698c7fe3f7bf68660efea6c41bb (diff)
Add CSIT for MultiCLoud-VIO(nova)
Change-Id: I5f168e157714b52fde2404757fd44b9dd432725e Issue-Id: MULTICLOUD-103 Signed-off-by: Bin Sun <bins@vmware.com>
-rw-r--r--test/csit/tests/multicloud-vmware/nova/jsoninput/multicloud_create_server.json16
-rw-r--r--test/csit/tests/multicloud-vmware/nova/sanity-flavor.robot62
-rw-r--r--test/csit/tests/multicloud-vmware/nova/sanity-host.robot83
-rwxr-xr-xtest/csit/tests/multicloud-vmware/nova/sanity-server.robot105
4 files changed, 266 insertions, 0 deletions
diff --git a/test/csit/tests/multicloud-vmware/nova/jsoninput/multicloud_create_server.json b/test/csit/tests/multicloud-vmware/nova/jsoninput/multicloud_create_server.json
new file mode 100644
index 000000000..ecaaa12d1
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/nova/jsoninput/multicloud_create_server.json
@@ -0,0 +1,16 @@
+{
+ "server":
+ {
+ "name": "server-csit-1",
+ "boot":
+ {
+ "type":2,
+ "imageId": "08edf57c-e65d-4778-957a-1524ff795c4b"
+ },
+ "flavorId": "1",
+ "nicArray":
+ [{
+ "portId": "71847500-8edf-42f9-be69-78432ccadc6e"
+ }]
+ }
+} \ No newline at end of file
diff --git a/test/csit/tests/multicloud-vmware/nova/sanity-flavor.robot b/test/csit/tests/multicloud-vmware/nova/sanity-flavor.robot
new file mode 100644
index 000000000..5adafb5af
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/nova/sanity-flavor.robot
@@ -0,0 +1,62 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
+
+#json files
+${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+
+#global vars
+${TOKEN}
+${TENANTID}
+${flavor1Id}
+
+*** Test Cases ***
+
+GetAuthToken
+ [Documentation] Sanity test - Get Auth Token
+ ${json_value}= json_from_file ${auth_info_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${get_token_url} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${TOKEN}= Convert To String ${response_json['token']['value']}
+ ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
+ Set Global Variable ${TOKEN}
+ Set Global Variable ${TENANTID}
+
+
+ListFlavorsFuncTest
+ [Documentation] get a list of flavors info rest test
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= GET Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/flavors
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+ ${flavor1Id}= Convert To String ${response_json['flavors'][0]['id']}
+ Set Global Variable ${flavor1Id}
+ #Log To Console ${flavor1Id}
+
+GetFlavorFuncTest
+ [Documentation] get the specific flavor info rest test
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= GET Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/flavors/${flavor1Id}
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
diff --git a/test/csit/tests/multicloud-vmware/nova/sanity-host.robot b/test/csit/tests/multicloud-vmware/nova/sanity-host.robot
new file mode 100644
index 000000000..444c68e1a
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/nova/sanity-host.robot
@@ -0,0 +1,83 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
+
+#json files
+${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+
+#global vars
+${TOKEN}
+${TENANTID}
+${host1Id}
+
+*** Test Cases ***
+
+GetAuthToken
+ [Documentation] Sanity test - Get Auth Token
+ ${json_value}= json_from_file ${auth_info_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${get_token_url} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${TOKEN}= Convert To String ${response_json['token']['value']}
+ ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
+ Set Global Variable ${TOKEN}
+ Set Global Variable ${TENANTID}
+
+TestListHosts
+ [Documentation] Sanity Test - List Hosts
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/os-hypervisors/detail
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+ ${host1Id}= Convert To String ${response_json['hypervisors'][0]['service']['id']}
+ Set Global Variable ${host1Id}
+
+TestGetHost
+ [Documentation] Sanity Test - Get Host
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/os-hypervisors/${host1Id}
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
+TestHostUptime
+ [Documentation] Sanity Test - Host Uptime
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/os-hypervisors/uptime
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
+
+TestHostAggregates
+ [Documentation] Sanity Test - Host Aggregates
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/os-aggregates
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
+
+
diff --git a/test/csit/tests/multicloud-vmware/nova/sanity-server.robot b/test/csit/tests/multicloud-vmware/nova/sanity-server.robot
new file mode 100755
index 000000000..7a092e6f0
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/nova/sanity-server.robot
@@ -0,0 +1,105 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+@{delete_ok_list}= 200 204
+${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
+
+#json files
+${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+${multicloud_create_server_json} ${SCRIPTS}/../tests/multicloud-vmware/nova/jsoninput/multicloud_create_server.json
+
+#global vars
+${TOKEN}
+${TENANTID}
+${server1Id}
+
+*** Test Cases ***
+
+GetAuthToken
+ [Documentation] Sanity test - Get Auth Token
+ ${json_value}= json_from_file ${auth_info_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${get_token_url} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${TOKEN}= Convert To String ${response_json['token']['value']}
+ ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
+ Set Global Variable ${TOKEN}
+ Set Global Variable ${TENANTID}
+
+CreateServerFuncTest
+ [Documentation] Sanity Test - Create Server
+ ${json_value}= json_from_file ${multicloud_create_server_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ Set Request Body ${json_string}
+ #Log To Console ${json_string}
+ ${resp}= Post Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers ${json_string}
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+ ${server1Id}= Convert To String ${response_json['server']['id']}
+ Set Global Variable ${server1Id}
+
+
+GetServersFuncTest
+ [Documentation] Sanity Test - Get Servers
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+ #Log To Console ${server1Id}
+
+GetServerDetailFuncTest
+ [Documentation] Sanity Test - Get Server Detail
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/detail
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
+GetServerFuncTest
+ [Documentation] Sanity Test - Get Server
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/${server1Id}
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
+ServerActionFuncTest
+ [Documentation] Sanity Test - Server Action
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/${server1Id}/action
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
+
+DeleteServerFuncTest
+ [Documentation] Sanity Test - Delete Server
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Delete Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/${server1Id}
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${delete_ok_list} ${response_code}