blob: cd3048ac5f1c15b10b8f6c2c2d88b50f12100b10 [file] [log] [blame]
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -08001*** Settings ***
2Documentation Test suite for Sanity Test of Instance API
3Suite Setup Read InputFile
4Test Template Verify Instance API functionality
5Library Collections
6Library String
7Library OperatingSystem
8Library XML
9Library RequestsLibrary
Zack Williams821c5022020-01-15 15:11:46 -070010Library CORDRobot
11Library ImportResource resources=CORDRobot
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080012
13*** Variables ***
14${USER} admin
15${PASSWORD} admin
16${PATHFILE} ${CURDIR}/data/Sanity_Instance.json
17
18*** Test Cases *** TYPE LISTINDEX
19Test Add Instance-1
20 CREATE 0
21
22Test Get Instance-1
23 RETRIEVE 0
24
25Test Delete Instance-1
26 DELETE 0
27
28Test Add Instance-2
29 CREATE 1
30
31Test Get Instance-2
32 RETRIEVE 1
33
34Test Delete Instance-2
35 DELETE 1
36
37*** Keywords ***
38Read InputFile
Zack Williams821c5022020-01-15 15:11:46 -070039 ${instanceList} = CORDRobot.jsonToList ${PATHFILE} InstanceInfo
Suchitra.Vemuri65900f02016-12-22 15:26:10 -080040 Set Suite Variable ${iList} ${instanceList}
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080041
42Verify Instance API functionality
43 [Arguments] ${type} ${listIndex}
44 Run Keyword If "${type}" == "CREATE" Test Post Instances ${listIndex}
45 Run Keyword If "${type}" == "RETRIEVE" Test Get Instances ${listIndex}
46 Run Keyword If "${type}" == "DELETE" Test Delete Instances ${listIndex}
47
48Test Post Instances
49 [Arguments] ${listIndex}
Suchitra.Vemuri65900f02016-12-22 15:26:10 -080050 ${instanceList} = Get Variable Value ${iList}
Zack Williams821c5022020-01-15 15:11:46 -070051 ${instanceDict}= CORDRobot.listToDict ${instanceList} ${listIndex}
52 ${api_result}= CORDRobot.ApiPost CORE_SANITY_INSTANCES ${instanceDict}
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080053 Should Be True ${api_result}
54
55Test Get Instances
56 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070057 ${json_result}= CORDRobot.ApiGet CORE_INSTANCES
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080058 Log ${json_result}
Suchitra.Vemuri65900f02016-12-22 15:26:10 -080059 ${instanceList}= Get Variable Value ${iList}
Zack Williams821c5022020-01-15 15:11:46 -070060 ${inputDict}= CORDRobot.listToDict ${instanceList} ${listIndex}
61 ${instanceName}= CORDRobot.getFieldValueFromDict ${inputDict} name
62 ${getJsonDict}= CORDRobot.getDictFromListOfDict ${json_result} name ${instanceName}
63 ${test_result}= CORDRobot.compare_dict ${inputDict} ${getJsonDict}
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080064 Should Be True ${json_result}
65
66Test Delete Instances
67 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070068 ${json_getresult}= CORDRobot.ApiGet CORE_INSTANCES
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080069 ${instanceList}= Get Variable Value ${iList}
Zack Williams821c5022020-01-15 15:11:46 -070070 ${instanceDict}= CORDRobot.listToDict ${iList} ${listIndex}
71 ${instanceName}= CORDRobot.getFieldValueFromDict ${instanceDict} name
Suchitra.Vemuri65900f02016-12-22 15:26:10 -080072 Log ${instanceName}
Zack Williams821c5022020-01-15 15:11:46 -070073 ${getInstanceDict}= CORDRobot.getDictFromListofDict ${json_getresult} name ${instanceName}
Suchitra.Vemuri65900f02016-12-22 15:26:10 -080074 Log ${getInstanceDict}
Zack Williams821c5022020-01-15 15:11:46 -070075 ${instanceID}= CORDRobot.getFieldValueFromDict ${getInstanceDict} id
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080076 Log ${instanceID}
Zack Williams821c5022020-01-15 15:11:46 -070077 ${test_result}= CORDRobot.ApiDelete CORE_INSTANCES ${instanceID}
Suchitra.Vemuri75dffd42016-12-20 15:35:25 -080078 Should be True ${test_result}