blob: 7a092e6f0d15391f87b6245258e627e9e7d893d3 [file] [log] [blame]
Gary Wu9abb61c2018-09-27 10:38:50 -07001*** settings ***
2Resource ../../common.robot
3Library Collections
4Library RequestsLibrary
5Library OperatingSystem
6Library json
7Library HttpLibrary.HTTP
8
9
10*** Variables ***
11@{return_ok_list}= 200 201 202
12@{delete_ok_list}= 200 204
13${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
14
15#json files
16${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
17${multicloud_create_server_json} ${SCRIPTS}/../tests/multicloud-vmware/nova/jsoninput/multicloud_create_server.json
18
19#global vars
20${TOKEN}
21${TENANTID}
22${server1Id}
23
24*** Test Cases ***
25
26GetAuthToken
27 [Documentation] Sanity test - Get Auth Token
28 ${json_value}= json_from_file ${auth_info_json}
29 ${json_string}= string_from_json ${json_value}
30 ${headers} Create Dictionary Content-Type=application/json Accept=application/json
31 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
32 ${resp}= POST Request web_session ${get_token_url} ${json_string}
33 ${responese_code}= Convert To String ${resp.status_code}
34 List Should Contain Value ${return_ok_list} ${responese_code}
35 ${response_json} json.loads ${resp.content}
36 ${TOKEN}= Convert To String ${response_json['token']['value']}
37 ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
38 Set Global Variable ${TOKEN}
39 Set Global Variable ${TENANTID}
40
41CreateServerFuncTest
42 [Documentation] Sanity Test - Create Server
43 ${json_value}= json_from_file ${multicloud_create_server_json}
44 ${json_string}= string_from_json ${json_value}
45 ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
46 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
47 Set Request Body ${json_string}
48 #Log To Console ${json_string}
49 ${resp}= Post Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers ${json_string}
50 ${response_code}= Convert To String ${resp.status_code}
51 List Should Contain Value ${return_ok_list} ${response_code}
52 ${response_json} json.loads ${resp.content}
53 #Log To Console ${response_json}
54 ${server1Id}= Convert To String ${response_json['server']['id']}
55 Set Global Variable ${server1Id}
56
57
58GetServersFuncTest
59 [Documentation] Sanity Test - Get Servers
60 ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
61 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
62 ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers
63 ${response_code}= Convert To String ${resp.status_code}
64 List Should Contain Value ${return_ok_list} ${response_code}
65 ${response_json} json.loads ${resp.content}
66 #Log To Console ${response_json}
67 #Log To Console ${server1Id}
68
69GetServerDetailFuncTest
70 [Documentation] Sanity Test - Get Server Detail
71 ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
72 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
73 ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/detail
74 ${response_code}= Convert To String ${resp.status_code}
75 List Should Contain Value ${return_ok_list} ${response_code}
76 ${response_json} json.loads ${resp.content}
77 #Log To Console ${response_json}
78
79GetServerFuncTest
80 [Documentation] Sanity Test - Get Server
81 ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
82 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
83 ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/${server1Id}
84 ${response_code}= Convert To String ${resp.status_code}
85 List Should Contain Value ${return_ok_list} ${response_code}
86 ${response_json} json.loads ${resp.content}
87 #Log To Console ${response_json}
88
89ServerActionFuncTest
90 [Documentation] Sanity Test - Server Action
91 ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
92 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
93 ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/${server1Id}/action
94 ${response_code}= Convert To String ${resp.status_code}
95 List Should Contain Value ${return_ok_list} ${response_code}
96 ${response_json} json.loads ${resp.content}
97 #Log To Console ${response_json}
98
99DeleteServerFuncTest
100 [Documentation] Sanity Test - Delete Server
101 ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
102 Create Session web_session http://${VIO_IP}:9004 headers=${headers}
103 ${resp}= Delete Request web_session api/multicloud-vio/v0/vmware_fake/nova/${TENANTID}/servers/${server1Id}
104 ${response_code}= Convert To String ${resp.status_code}
105 List Should Contain Value ${delete_ok_list} ${response_code}