blob: f8218aca1e0659420ff5c82fd73616408675e823 [file] [log] [blame]
Suchitra Vemurif7410a92017-05-16 17:04:05 -07001*** Settings ***
2Documentation Test suite for Slice API verification
3Suite Setup Read InputFile
4Test Template Verify Slice 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 Vemurif7410a92017-05-16 17:04:05 -070012Variables ../Properties/RestApiProperties.py
13
14*** Variables ***
Suchitra Vemurif7410a92017-05-16 17:04:05 -070015${PATHFILE} ${CURDIR}/data/Ch_Slice.json
16${IP} ${SERVER_IP}
17${PORT} ${SERVER_PORT}
18
19*** Test Cases *** TYPE LISTINDEX
20Test Add Slice-1 CREATE 0
21
22Test Get Slice-1 RETRIEVE 0
23
24Test Delete Slice-1
25 DELETE 0
26
27*** Keywords ***
28Read InputFile
Zack Williams821c5022020-01-15 15:11:46 -070029 ${sliceList} = CORDRobot.jsonToList ${PATHFILE} SliceInfo
Suchitra Vemurif7410a92017-05-16 17:04:05 -070030 Set Suite Variable ${sList} ${sliceList}
31
32Verify Slice API functionality
33 [Arguments] ${type} ${listIndex}
34 Run Keyword If "${type}" == "CREATE" Test Post Slice API ${listIndex}
35 Run Keyword If "${type}" == "RETRIEVE" Test Get Slice API ${listIndex}
36 Run Keyword If "${type}" == "DELETE" Test Delete Slice API ${listIndex}
37
38Test Post Slice API
39 [Arguments] ${listIndex}
40 ${sliceList} = Get Variable Value ${sList}
Zack Williams821c5022020-01-15 15:11:46 -070041 ${sliceDict}= CORDRobot.listToDict ${sliceList} ${listIndex}
42 ${api_result}= CORDRobot.ApiPost CH_CORE_SLICES ${sliceDict}
Suchitra Vemurif7410a92017-05-16 17:04:05 -070043 Should Be True ${api_result}
44
45Test Get Slice API
46 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070047 ${json_result}= CORDRobot.ApiGet CH_CORE_SLICES
Suchitra Vemurif7410a92017-05-16 17:04:05 -070048 ${json_result_list}= Get From Dictionary ${json_result} items
49 Log ${json_result_list}
50 ${sliceList}= Get Variable Value ${sList}
Zack Williams821c5022020-01-15 15:11:46 -070051 ${sliceDict}= CORDRobot.listToDict ${sliceList} ${listIndex}
Suchitra Vemurif7410a92017-05-16 17:04:05 -070052 ${sliceName}= Get From Dictionary ${sliceDict} name
Zack Williams821c5022020-01-15 15:11:46 -070053 ${getJsonDict}= CORDRobot.getDictFromListOfDict ${json_result_list} name ${sliceName}
54 ${test_result}= CORDRobot.compare_dict ${sliceDict} ${getJsonDict}
Suchitra Vemurif7410a92017-05-16 17:04:05 -070055 Should Be True ${json_result}
56
57Test Delete Slice API
58 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070059 ${json_getresult}= CORDRobot.ApiGet CH_CORE_SLICES
Suchitra Vemurif7410a92017-05-16 17:04:05 -070060 ${json_getresult_list}= Get From Dictionary ${json_getresult} items
61 ${sliceList}= Get Variable Value ${sList}
Zack Williams821c5022020-01-15 15:11:46 -070062 ${sliceDict}= CORDRobot.listToDict ${sList} ${listIndex}
63 ${sliceName}= CORDRobot.getFieldValueFromDict ${sliceDict} name
Suchitra Vemurif7410a92017-05-16 17:04:05 -070064 Log ${sliceName}
Zack Williams821c5022020-01-15 15:11:46 -070065 ${getSliceDict}= CORDRobot.getDictFromListofDict ${json_getresult_list} name ${sliceName}
Suchitra Vemurif7410a92017-05-16 17:04:05 -070066 Log ${getSliceDict}
Zack Williams821c5022020-01-15 15:11:46 -070067 ${sliceID}= CORDRobot.getFieldValueFromDict ${getSliceDict} id
Suchitra Vemurif7410a92017-05-16 17:04:05 -070068 Log ${sliceID}
Zack Williams821c5022020-01-15 15:11:46 -070069 ${test_result}= CORDRobot.ApiChameleonDelete CH_CORE_SLICES ${sliceID}
Suchitra Vemurif7410a92017-05-16 17:04:05 -070070 Should be True ${test_result}