2 Library RequestsLibrary
3 Resource ../../../../common.robot
4 Resource ./netconf-server-properties.robot
8 Verify That Server Is Healthy
9 [Documentation] Verify that server is healthy
10 Create Session netconf_server_session ${NETCONF_SERVER_URL}
11 ${resp}= GET On Session netconf_server_session /healthcheck
12 Should Be Equal As Strings ${resp.status_code} 200
13 Should Be Equal As Strings ${resp.text} UP
15 Verify That Server Is Ready
16 [Documentation] Verify that server is ready
17 Create Session netconf_server_session ${NETCONF_SERVER_URL}
18 ${resp}= GET On Session netconf_server_session /readiness
19 Should Be Equal As Strings ${resp.status_code} 200
20 Should Be Equal As Strings ${resp.text} Ready
22 Update NetConf Module Configuration
23 [Documentation] Update module configuration
24 [Arguments] ${module} ${path_to_data} ${resp_code}
25 ${data}= Get Data From File ${path_to_data}
27 Create Session netconf_server_session ${NETCONF_SERVER_URL}
28 ${resp}= POST On Session netconf_server_session /change_config/${module} data=${data}
29 Should Be Equal As Strings ${resp.status_code} ${resp_code}
31 Verify That Change Is Available In NetConf Module Change Configuration History
32 [Documentation] Verify that configuration was distributed to Kafka
33 [Arguments] ${resp_code}
35 Create Session netconf_server_session ${NETCONF_SERVER_URL}
36 ${resp}= GET On Session netconf_server_session /change_history
37 Should Be Equal As Strings ${resp.status_code} ${resp_code}
38 ${actual_data}= Convert To String ${resp.json()}
39 Should Be Equal ${actual_data} [{u'new': {u'path': u'/pnf-simulator:config/itemValue1', u'value': 42}, u'type': u'ChangeCreated'}, {u'new': {u'path': u'/pnf-simulator:config/itemValue2', u'value': 35}, u'type': u'ChangeCreated'}]
41 Verify That Configuration History Is Available
42 [Documentation] Verify that configuration is available
43 [Arguments] ${resp_code}
45 Create Session netconf_server_session ${NETCONF_SERVER_URL}
46 ${resp}= GET On Session netconf_server_session /get_config/pnf-simulator
47 Should Be Equal As Strings ${resp.status_code} ${resp_code}
48 Dictionary Should Contain Item ${resp.json()['config']} itemValue1 ${42}
49 Dictionary Should Contain Item ${resp.json()['config']} itemValue2 ${35}