blob: ce42e3f166aecd05b114b62e973e7671acae7247 [file] [log] [blame]
Suchitra Vemuriff825322018-09-07 14:00:04 -07001*** Settings ***
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -07002Documentation Test successful ping from end-end
Suchitra Vemuriff825322018-09-07 14:00:04 -07003Suite Setup Read InputFile
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -07004#Suite Teardown Teardown
Suchitra Vemuriff825322018-09-07 14:00:04 -07005Library Collections
6Library String
7Library OperatingSystem
8Library XML
9Library RequestsLibrary
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070010Library ../../Framework/utils/utils.py
11Resource ../../Framework/utils/utils.robot
12Library ../../Framework/restApi.py
13Resource ../../Framework/Subscriber.robot
14Resource ../../Framework/ATTWorkFlowDriver.robot
15Resource ../../Framework/ONU.robot
16Resource ../../Framework/DHCP.robot
17Variables ../../Properties/RestApiProperties.py
Suchitra Vemuriff825322018-09-07 14:00:04 -070018
19*** Variables ***
Kailash Khalasi30a6a392018-09-10 14:32:39 -070020${WHITELIST_PATHFILE} ${CURDIR}/data/ATTWhiteList.json
21${SUBSCRIBER_PATHFILE} ${CURDIR}/data/ATTSubscriber.json
Kailash Khalasia0810ce2018-09-10 13:03:27 -070022${src_ip} X.X.X.X
23${src_gateway} X.X.X.X
24${src_user} user
25${src_pass} pass
26${src_iface} eth0
27${dst_ip} X.X.X.X
28${dst_user} user
29${dst_pass} pass
30${dst_gateway} X.X.X.X
31${dst_host_ip} X.X.X.X
Suchitra Vemuriff825322018-09-07 14:00:04 -070032
Kailash Khalasia0810ce2018-09-10 13:03:27 -070033*** Test Cases ***
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070034Validate ONU States
35 [Documentation] Validate status field in ONU List
Kailash Khalasia0810ce2018-09-10 13:03:27 -070036 Wait Until Keyword Succeeds 60s 2s Validate ONU States ACTIVE ENABLED
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070037
38Validate states in ATT WorkFlowDriver Service Instances
39 [Documentation] Validates necessary states for entries in workflow driver service instance list
Kailash Khalasia0810ce2018-09-10 13:03:27 -070040 Wait Until Keyword Succeeds 60s 2s Validate ATT Workflow Driver SI valid AWAITING
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070041
42Validate Subscriber State
43 [Documentation] Validate subscriber status in the rcordsubscriber list
Kailash Khalasia0810ce2018-09-10 13:03:27 -070044 Wait Until Keyword Succeeds 60s 2s Validate Subscriber Status AWAITING-AUTH
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070045
Kailash Khalasia0810ce2018-09-10 13:03:27 -070046Send Subscriber Authentication
47 [Documentation] Sends a successful 802.1x EAPOL message from the subscriber
48 Send EAPOL Message ${src_ip} ${src_user} ${src_pass} ${src_iface} wpa_supplicant.conf
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070049
50Validate states in ATT WorkFlowDriver instances after subscriber authentication
51 [Documentation] Validate proper states on the service instances after authentication
Kailash Khalasia0810ce2018-09-10 13:03:27 -070052 Wait Until Keyword Succeeds 60s 2s Validate ATT Workflow Driver SI valid APPROVED
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070053
54Re-Validate Subscriber State
55 [Documentation] Validate subscriber status in the rcordsubscriber list
Kailash Khalasia0810ce2018-09-10 13:03:27 -070056 Wait Until Keyword Succeeds 60s 2s Validate Subscriber Status ENABLED
57
58Execute Dhclient on RG
59 [Documentation] Run dhclient on the dataplane interface on the RG
60 Send Dhclient Request ${src_ip} ${src_user} ${src_pass} ${src_iface}
61
62Test E2E Connectivity
63 [Documentation] Test pings after subscriber has been authenticated + enabled
64 Wait Until Keyword Succeeds 60s 2s Test Ping PASS ${src_ip} ${src_user} ${src_pass} ${dst_host_ip}
Suchitra Vemuriff825322018-09-07 14:00:04 -070065
66*** Keywords ***
67Read InputFile
Kailash Khalasi30a6a392018-09-10 14:32:39 -070068 ${AttWhiteListList}= utils.jsonToList ${WHITELIST_PATHFILE} AttWhiteListInfo
69 Set Suite Variable ${alist} ${AttWhiteListList}
70 ${AttWhiteListList} = Get Variable Value ${alist}
Suchitra Vemuriff825322018-09-07 14:00:04 -070071 ${AttWhiteListDict}= utils.listToDict ${AttWhiteListList} 0
72 ${onu_device}= Get From Dictionary ${AttWhiteListDict} serial_number
73 Log ${onu_device}
Suchitra Vemuriff825322018-09-07 14:00:04 -070074 Set Global Variable ${onu_device}
Kailash Khalasi30a6a392018-09-10 14:32:39 -070075 ${SubscriberList}= utils.jsonToList ${SUBSCRIBER_PATHFILE} SubscriberInfo
76 Set Global Variable ${slist} ${SubscriberList}
Suchitra Vemuriff825322018-09-07 14:00:04 -070077
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070078Teardown
79 [Documentation] Delete and clean up xos objects
Kailash Khalasia0810ce2018-09-10 13:03:27 -070080 Kill Linux Process [w]pa_supplicant
81 Kill Linux Process [d]hclient
82 Clean Up Objects ${VOLT_SUBSCRIBER}
Suchitra Vemuri32fc2f22018-09-10 12:06:01 -070083 Clean Up Objects ${VOLT_DEVICE}
84 Clean Up Objects ${ATT_WHITELIST}
Kailash Khalasia0810ce2018-09-10 13:03:27 -070085
86Validate ONU States
87 [Arguments] ${expected_op_status} ${expected_admin_status}
88 ${operational_status} ${admin_status} ONU Status Check ${onu_device}
89 Should Be Equal ${operational_status} ${expected_op_status}
90 Should Be Equal ${admin_status} ${expected_admin_status}
91
92Validate ATT Workflow Driver SI
93 [Arguments] ${expected_status} ${expected_auth_status}
94 ${status} ${authentication_status} Service Instance Status Check ${onu_device}
95 Should Be Equal ${status} ${expected_status}
96 Should Be Equal ${authentication_status} ${expected_auth_status}
97
98Validate Subscriber Status
99 [Arguments] ${exepected_status}
100 ${status} Subscriber Status Check ${onu_device}
101 Should Be Equal ${status} ${exepected_status}