blob: c53097c7c712787c1a6acc3857b10fbecb2cd3fa [file] [log] [blame]
Suchitra Vemuri9fa07c32018-08-28 16:56:01 -07001*** Settings ***
2Documentation Test to Configure White List
3Suite Setup Read InputFile
4Test Template Configuring White List
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/AttWhiteList.json
15
16*** Test Cases *** TYPE LISTINDEX
17Test Service Instance States
18 STATUS_CHECK 0
19Test ONU States
20 ONU_STATUS 0
21
22*** Keywords ***
23Read InputFile
24 ${AttWhiteListList}= utils.jsonToList ${PATHFILE} AttWhiteListInfo
25 Set Suite Variable ${slist} ${AttWhiteListList}
26 Set Global Variable ${AttWorkFlowDriver_Id} ${EMPTY}
27 Set Global Variable ${AttWhiteList_Id} ${EMPTY}
28 Set Global Variable ${onu_device} ${EMPTY}
29 Set Global Variable ${AttServiceInstance_Id} ${EMPTY}
30 Set Global Variable ${authentication_status} ${EMPTY}
31
32Configuring White List
33 [Arguments] ${type} ${listIndex}
34 Run Keyword If "${type}" == "CREATE" Post White List ${listIndex}
35 Run Keyword If "${type}" == "RETRIEVE" Get White List ${listIndex}
36 Run Keyword If "${type}" == "STATUS_CHECK" Service Instance Status Check ${listIndex}
37 Run Keyword If "${type}" == "ONU_STATUS" ONU Status Check ${listIndex}
38
39Post White List
40 [Arguments] ${listIndex}
41 ${AttWhiteListList} = Get Variable Value ${slist}
42 ${AttWhiteListDict}= utils.listToDict ${AttWhiteListList} ${listIndex}
43 ${onu_device}= Get From Dictionary ${AttWhiteListDict} serial_number
44 Log ${onu_device}
45 # Retrieve ATT Service Driver Id
46 ${api_getResult}= restApi.ApiGet ATT_SERVICE
47 ${AttWorkFlowDriverList}= Get From Dictionary ${api_getResult} items
48 ${AttWorkFlowDriverDict}= utils.getDictFromListOfDict ${AttWorkFlowDriverList} leaf_model_name AttWorkflowDriverService
49 ${AttWorkFlowDriver_Id}= Get From Dictionary ${AttWorkFlowDriverDict} id
50 ${AttWhiteListDict}= utils.setFieldValueInDict ${AttWhiteListDict} owner_id ${AttWorkFlowDriver_Id}
51 Log ${AttWhiteListDict}
52 ${api_result_status} ${api_result_json}= restApi.ApiPostReturnJson ATT_WHITELIST ${AttWhiteListDict}
53 Should Be True ${api_result_status}
54 ${AttWhiteList_Id}= Get From Dictionary ${api_result_json} id
55 Set Global Variable ${AttWhiteList_Id}
56 Set Global Variable ${onu_device}
57
58Get White List
59 [Arguments] ${listIndex}
60 Log ${AttWhiteList_Id}
61 ${json_result}= restApi.ApiChameleonGet ATT_WHITELIST ${AttWhiteList_Id}
62 Log ${json_result}
63 ${AttWhiteListList} = Get Variable Value ${slist}
64 ${AttWhiteListDict}= utils.listToDict ${AttWhiteListList} ${listIndex}
65 Log ${AttWhiteListDict}
66 ${test_result}= utils.compare_dict ${AttWhiteListDict} ${json_result}
67 Should Be True ${test_result}
68
69Service Instance Status Check
70 [Arguments] ${listIndex}
71 Set Global Variable ${AttServiceInstance_Id} ${EMPTY}
72 Log ${AttServiceInstance_Id}
73 ${json_result}= restApi.ApiGet ATT_SERVICEINSTANCES
74 Log ${json_result}
75 ${json_result_list}= Get From dictionary ${json_result} items
76 ${getJsonDict}= utils.getDictFromListOfDict ${json_result_list} serial_number ${onu_device}
77 ${status}= Get From Dictionary ${getJsonDict} valid
78 ${authentication_status}= Get From Dictionary ${getJsonDict} authentication_state
79 ${AttServiceInstance_Id}= Get From Dictionary ${getJsonDict} id
80 Set Global Variable ${AttServiceInstance_Id}
81 #Should Be Equal ${status} valid
82 Should Be Equal ${authentication_status} AWAITING
83
84ONU Status Check
85 [Arguments] ${listIndex}
86 ${json_result}= restApi.ApiGet ONU_DEVICE
87 Log ${json_result}
88 ${json_result_list}= Get From dictionary ${json_result} items
89 ${getJsonDict}= utils.getDictFromListOfDict ${json_result_list} serial_number ${onu_device}
90 ${operational_status}= Get From Dictionary ${getJsonDict} oper_status
91 ${admin_status}= Get From Dictionary ${getJsonDict} admin_state
92 Should Be Equal ${operational_status} DISABLED
93 Should Be Equal ${admin_status} DISABLED