... netconf operations into reusable keywords to make writing netconf
... test suites easier.
Library Collections
+Library DateTime
Library RequestsLibrary
Resource NetconfViaRestconf.robot
Resource SSHKeywords.robot
SSHLibrary.Get_File testtool.log
NetconfKeywords__Perform_Operation_With_Checking_On_Next_Device
- [Arguments] ${operation}
+ [Arguments] ${operation} ${deadline_Date}
+ ${current_Date}= DateTime.Get_Current_Date
+ ${ellapsed_seconds}= DateTime.Subtract_Date_From_Date ${deadline_Date} ${current_Date}
+ BuiltIn.Run_Keyword_If ${ellapsed_seconds}<0 Fail The global time out period expired
${number}= BuiltIn.Evaluate ${current_port}-${BASE_NETCONF_DEVICE_PORT}+1
BuiltIn.Wait_Until_Keyword_Succeeds 10s 1s NetconfKeywords.Check_Device_Up_And_Running ${number}
BuiltIn.Run_Keyword ${operation} ${DEVICE_NAME_BASE}-${number}
BuiltIn.Set_Suite_Variable ${current_port} ${next}
Perform_Operation_On_Each_Device
- [Arguments] ${operation} ${count}=${DEVICE_COUNT}
+ [Arguments] ${operation} ${count}=${DEVICE_COUNT} ${timeout}=30m
+ ${current_Date}= DateTime.Get_Current_Date
+ ${deadline_Date}= DateTime.Add_Time_To_Date ${current_Date} ${timeout}
BuiltIn.Set_Suite_Variable ${current_port} ${BASE_NETCONF_DEVICE_PORT}
- BuiltIn.Repeat_Keyword ${count} times NetconfKeywords__Perform_Operation_With_Checking_On_Next_Device ${operation}
+ BuiltIn.Repeat_Keyword ${count} times NetconfKeywords__Perform_Operation_With_Checking_On_Next_Device ${operation} ${deadline_Date}
Configure_Devices_Onto_Netconf
[Documentation] Make requests to configure the testtool devices.
[Tags] critical
- NetconfKeywords.Perform_Operation_On_Each_Device Configure_Device
+ ${timeout}= BuiltIn.Evaluate ${DEVICE_COUNT}*10
+ NetconfKeywords.Perform_Operation_On_Each_Device Configure_Device timeout=${timeout}
Get_Data_From_Devices
[Documentation] Ask testtool devices for data.
- NetconfKeywords.Perform_Operation_On_Each_Device Check_Device_Data
+ ${timeout}= BuiltIn.Evaluate ${DEVICE_COUNT}*2
+ NetconfKeywords.Perform_Operation_On_Each_Device Check_Device_Data timeout=${timeout}
Deconfigure_Devices_From_Netconf
[Documentation] Make requests to deconfigure the testtool devices.
[Tags] critical
- NetconfKeywords.Perform_Operation_On_Each_Device Deconfigure_Device
+ ${timeout}= BuiltIn.Evaluate ${DEVICE_COUNT}*10
+ NetconfKeywords.Perform_Operation_On_Each_Device Deconfigure_Device timeout=${timeout}
[Teardown] Report_Failure_Due_To_Bug 4547
*** Keywords ***
SSHLibrary.Set_Default_Configuration prompt=${TOOLS_SYSTEM_PROMPT}
SetupUtils.Setup_Utils_For_Setup_And_Teardown
NetconfKeywords.Setup_Netconf_Keywords
+ KarafKeywords.Configure_Timeout_For_Karaf_Console 120s
# Connect to the tools machine
SSHLibrary.Open_Connection ${TOOLS_SYSTEM_IP}
Utils.Flexible_Mininet_Login
KarafKeywords.Log_Message_To_Controller_Karaf Removing device ${current_name}
NetconfKeywords.Remove_Device_From_Netconf ${current_name}
KarafKeywords.Log_Message_To_Controller_Karaf Waiting for device ${current_name} to disappear
- NetconfKeywords.Wait_Device_Fully_Removed ${current_name} period=0.5s
+ NetconfKeywords.Wait_Device_Fully_Removed ${current_name} period=0.5s timeout=120s
KarafKeywords.Log_Message_To_Controller_Karaf Device ${current_name} removed