summaryrefslogtreecommitdiffstats
path: root/tests/multicloud-vmware/nova/sanity-server.robot
blob: 7a092e6f0d15391f87b6245258e627e9e7d893d3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
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}