blob: 9b6817f7701f61222cb38db156845e034b93dd92 [file] [log] [blame]
You Wang0869a322016-12-05 16:55:51 -08001*** Settings ***
2Documentation Test suite for Service verification
3Suite Setup Read InputFile
4Test Template Verify Service functionality
5Library Collections
6Library String
7Library OperatingSystem
8Library XML
9Library RequestsLibrary
Zack Williams821c5022020-01-15 15:11:46 -070010Library CORDRobot
11Library ImportResource resources=CORDRobot
You Wang0869a322016-12-05 16:55:51 -080012
13*** Variables ***
14${USER} admin
15${PASSWORD} admin
16${PATHFILE} ${CURDIR}/data/Service.json
17${PATHFILE2} ${CURDIR}/data/putService.json
18
19*** Test Cases *** TYPE LISTINDEX
20Test Post Service-1 CREATE 0
21
22Test Get Service-1 RETRIEVE 0
23
24Test Edit Service-1 PUT 0
25
26Test Delete Service-1 DELETE 0
27
28Test Post Service-2 CREATE 1
29
30Test Get Service-2 RETRIEVE 1
31
32Test Edit Service-2 PUT 1
33
34Test Delete Service-2 DELETE 1
35
36*** Keywords ***
37Read InputFile
Zack Williams821c5022020-01-15 15:11:46 -070038 ${serviceList}= CORDRobot.jsonToList ${PATHFILE} ServiceInfo
You Wang0869a322016-12-05 16:55:51 -080039 Set Suite Variable ${slist} ${serviceList}
Zack Williams821c5022020-01-15 15:11:46 -070040 ${putServiceList}= CORDRobot.jsonToList ${PATHFILE2} ServiceInfo
You Wang0869a322016-12-05 16:55:51 -080041 Set Suite Variable ${putList} ${putServiceList}
42
43Verify Service functionality
44 [Arguments] ${type} ${listIndex}
45 Run Keyword If "${type}" == "CREATE" Test Post Service API ${listIndex}
46 Run Keyword If "${type}" == "RETRIEVE" Test Get Service API ${listIndex}
47 Run Keyword If "${type}" == "PUT" Test Edit Service API ${listIndex}
48 Run Keyword If "${type}" == "DELETE" Test Delete Service API ${listIndex}
49
50Test Post Service API
51 [Arguments] ${listIndex}
52 ${serviceList} = Get Variable Value ${slist}
Zack Williams821c5022020-01-15 15:11:46 -070053 ${serviceDict}= CORDRobot.listToDict ${serviceList} ${listIndex}
54 ${api_result}= CORDRobot.ApiPost CORE_SERVICES ${serviceDict}
You Wang0869a322016-12-05 16:55:51 -080055 Should Be True ${api_result}
56
57Test Get Service API
58 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070059 ${json_result}= CORDRobot.ApiGet CORE_SERVICES
You Wang0869a322016-12-05 16:55:51 -080060 Log ${json_result}
61 ${serviceList}= Get Variable Value ${slist}
Zack Williams821c5022020-01-15 15:11:46 -070062 ${serviceDict}= CORDRobot.listToDict ${serviceList} ${listIndex}
63 ${name}= CORDRobot.getFieldValueFromDict ${serviceDict} name
64 ${getJsonDict}= CORDRobot.getDictFromListOfDict ${json_result} name ${name}
65 ${test_result}= CORDRobot.compare_dict ${serviceDict} ${getJsonDict}
You Wang0869a322016-12-05 16:55:51 -080066 Should Be True ${test_result}
67
68Test Edit Service API
69 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070070 ${get_result}= CORDRobot.ApiGet CORE_SERVICES
You Wang0869a322016-12-05 16:55:51 -080071 ${putServiceList}= Get Variable Value ${putList}
Zack Williams821c5022020-01-15 15:11:46 -070072 ${putServiceDict}= CORDRobot.listToDict ${putServiceList} ${listIndex}
73 ${name}= CORDRobot.getFieldValueFromDict ${putServiceDict} name
74 ${serviceDict}= CORDRobot.getDictFromListofDict ${get_result} name ${name}
75 ${serviceID}= CORDRobot.getFieldValueFromDict ${serviceDict} id
76 ${api_result}= CORDRobot.ApiPut CORE_SERVICES ${putServiceDict} ${serviceID}
You Wang0869a322016-12-05 16:55:51 -080077 Should Be True ${api_result}
Zack Williams821c5022020-01-15 15:11:46 -070078 ${getResultAfterPut}= CORDRobot.ApiGet CORE_SERVICES ${serviceID}
79 ${test_result}= CORDRobot.compare_dict ${putServiceDict} ${getResultAfterPut}
You Wang0869a322016-12-05 16:55:51 -080080 Should Be True ${test_result}
81
82Test Delete Service API
83 [Arguments] ${listIndex}
Zack Williams821c5022020-01-15 15:11:46 -070084 ${json_result}= CORDRobot.ApiGet CORE_SERVICES
You Wang0869a322016-12-05 16:55:51 -080085 ${serviceList}= Get Variable Value ${slist}
Zack Williams821c5022020-01-15 15:11:46 -070086 ${serviceDict}= CORDRobot.listToDict ${serviceList} ${listIndex}
87 ${name}= CORDRobot.getFieldValueFromDict ${serviceDict} name
You Wang0869a322016-12-05 16:55:51 -080088 Log ${name}
Zack Williams821c5022020-01-15 15:11:46 -070089 ${serviceDict}= CORDRobot.getDictFromListofDict ${json_result} name ${name}
You Wang0869a322016-12-05 16:55:51 -080090 Log ${serviceDict}
Zack Williams821c5022020-01-15 15:11:46 -070091 ${serviceId}= CORDRobot.getFieldValueFromDict ${serviceDict} id
You Wang0869a322016-12-05 16:55:51 -080092 Log ${serviceId}
Zack Williams821c5022020-01-15 15:11:46 -070093 ${test_result}= CORDRobot.ApiDelete CORE_SERVICES ${serviceId}
You Wang0869a322016-12-05 16:55:51 -080094 Should Be True ${test_result}