blob: 410b16958e311e2d26888ea9a06ba6f89204508f [file] [log] [blame]
Suchitra Vemuri0f3dd092018-07-10 17:24:56 -07001*** Settings ***
2Documentation Test suite for FabricSwitch
3Suite Setup Read InputFile
4Test Template Verify FabricSwitch functionality
5Library Collections
6Library String
7Library OperatingSystem
8Library XML
9Library RequestsLibrary
10Library ../Framework/utils/utils.py
11Library ../Framework/restApi.py
12
13*** Variables ***
14${PATHFILE} ${CURDIR}/data/FabricSwitch.json
15${PATHFILE1} ${CURDIR}/data/FabricSwitchPort.json
16${PATHFILE2} ${CURDIR}/data/FabricPortInterface.json
17
18*** Test Cases *** TYPE LISTINDEX
19Test Create FarbicSwitch-1
20 CREATE 0
21Test Get FabricSwitch-1
22 RETRIEVE 0
23Test Create FabricSwitchPort-1
24 PORTCREATE 0
25Test Get FabricSwitchPort-1
26 PORTRETRIEVE 0
27Test Create FabricPortInterface-1
28 INTERFACECREATE 0
29Test Get FabricPortInterface-1
30 INTERFACERETRIEVE 0
Suchitra Vemuri0f3dd092018-07-10 17:24:56 -070031Test Create FabricSwitchPort-2
32 PORTCREATE 1
33Test Get FabricSwitchPort-2
34 PORTRETRIEVE 1
35Test Create FabricPortInterface-2
36 INTERFACECREATE 1
37Test Get FabricPortInterface-2
38 INTERFACERETRIEVE 1
Suchitra Vemuri0f3dd092018-07-10 17:24:56 -070039
40*** Keywords ***
41Read InputFile
42 ${FabricList}= utils.jsonToList ${PATHFILE} FabricSwitchInfo
43 Set Suite Variable ${dlist} ${FabricList}
44 Set Global Variable ${Fabric_Id} ${EMPTY}
45 ${FabricPortList}= utils.jsonToList ${PATHFILE1} FabricSwitchPort
46 Set Suite Variable ${plist} ${FabricPortList}
47 Set Global Variable ${SwitchPort_Id} ${EMPTY}
48 ${FabricInterfaceList}= utils.jsonToList ${PATHFILE2} FabricPortInterface
49 Set Suite Variable ${ilist} ${FabricInterfaceList}
50 Set Global Variable ${FabricInterface_Id} ${EMPTY}
51
52Verify FabricSwitch functionality
53 [Arguments] ${type} ${listIndex}
54 Run Keyword If "${type}" == "CREATE" Test Create Fabric Switch ${listIndex}
55 Run Keyword If "${type}" == "RETRIEVE" Test Get Fabric Switch ${listIndex}
56 Run Keyword If "${type}" == "PORTCREATE" Test Create Switch Port API ${listIndex}
57 Run Keyword If "${type}" == "PORTRETRIEVE" Test Get Switch Port API ${listIndex}
58 Run Keyword If "${type}" == "INTERFACECREATE" Test Create Fabric Interface ${listIndex}
59 Run Keyword If "${type}" == "INTERFACERETRIEVE" Test Get Fabric Interface ${listIndex}
60
61Test Create Fabric Switch
62 [Arguments] ${listIndex}
63 ${FabricList} = Get Variable Value ${dlist}
64 ${FabricDict}= utils.listToDict ${FabricList} ${listIndex}
65 ${api_result_status} ${api_result_json}= restApi.ApiPostReturnJson FABRIC_SWITCH ${FabricDict}
66 Should Be True ${api_result_status}
67 ${Fabric_Id}= Get From Dictionary ${api_result_json} id
68 Set Global Variable ${Fabric_Id}
69
70Test Get Fabric Switch
71 [Arguments] ${listIndex}
72 Log ${Fabric_Id}
73 ${json_result}= restApi.ApiChameleonGet FABRIC_SWITCH ${Fabric_Id}
74 Log ${json_result}
75 ${FabricList} = Get Variable Value ${dlist}
76 ${FabricDict}= utils.listToDict ${FabricList} ${listIndex}
77 Log ${FabricDict}
78 ${test_result}= utils.compare_dict ${FabricDict} ${json_result}
79 Should Be True ${test_result}
80
81Test Create Switch Port API
82 [Arguments] ${listIndex}
83 ${SwitchPortList} = Get Variable Value ${plist}
84 ${SwitchPortDict}= utils.listToDict ${SwitchPortList} ${listIndex}
85 ${SwitchPortDict}= utils.setFieldValueInDict ${SwitchPortDict} switch_id ${Fabric_Id}
86 ${api_result_status} ${api_result_json}= restApi.ApiPostReturnJson SWITCH_PORT ${SwitchPortDict}
87 Should Be True ${api_result_status}
88 ${SwitchPort_Id}= Get From Dictionary ${api_result_json} id
89 Set Global Variable ${SwitchPort_Id}
90
91Test Get Switch Port API
92 [Arguments] ${listIndex}
93 Log ${SwitchPort_Id}
94 ${json_result}= restApi.ApiChameleonGet SWITCH_PORT ${SwitchPort_Id}
95 Log ${json_result}
96 ${SwitchPortList} = Get Variable Value ${plist}
97 ${SwitchPortDict}= utils.listToDict ${SwitchPortList} ${listIndex}
98 Log ${SwitchPortDict}
99 ${test_result}= utils.compare_dict ${SwitchPortDict} ${json_result}
100 Should Be True ${test_result}
101
102Test Create Fabric Interface
103 [Arguments] ${listIndex}
104 ${FabricInterfaceList}= Get Variable Value ${ilist}
105 ${FabricInterfaceDict}= utils.listToDict ${FabricInterfaceList} ${listIndex}
106 ${FabricInterfaceDict}= utils.setFieldValueInDict ${FabricInterfaceDict} port_id ${SwitchPort_Id}
107 ${api_result_status} ${api_result_json}= restApi.ApiPostReturnJson PORT_INTERFACE ${FabricInterfaceDict}
108 Should Be True ${api_result_status}
109 ${FabricInterface_Id}= Get From Dictionary ${api_result_json} id
110 Set Global Variable ${FabricInterface_Id}
111
112Test Get Fabric Interface
113 [Arguments] ${listIndex}
114 Log ${FabricInterface_Id}
115 ${json_result}= restApi.ApiChameleonGet PORT_INTERFACE ${FabricInterface_Id}
116 Log ${json_result}
117 ${FabricInterfaceList} = Get Variable Value ${ilist}
118 ${FabricInterfaceDict}= utils.listToDict ${FabricInterfaceList} ${listIndex}
119 Log ${FabricInterfaceDict}
120 ${test_result}= utils.compare_dict ${FabricInterfaceDict} ${json_result}
121 Should Be True ${test_result}