Use call-home SSH port 4334
[integration/test.git] / csit / libraries / BGPcliKeywords.robot
index 3ee431285f54516c6956e7a6c457dfd2069e1510..d8e797f037fd3be61144ac01dd54a85ffe990130 100644 (file)
@@ -13,15 +13,26 @@ Documentation     Robot keyword library (Resource) for handling the BGP speaker
 ...               TODO: RemoteBash.robot contains logic which could be reused here.
 Library           SSHLibrary    timeout=10s
 Library           RequestsLibrary
-Variables         ${CURDIR}/../variables/Variables.py
-Resource          ${CURDIR}/Utils.robot
+Resource          ../variables/Variables.robot
+Resource          RemoteBash.robot
+Resource          NexusKeywords.robot
 
 *** Keywords ***
 Start_Console_Tool
     [Arguments]    ${command}    ${tool_opt}
     [Documentation]    Start the tool ${command} ${tool_opt}
-    BuiltIn.Log    ${command}
-    ${output}=    SSHLibrary.Write    ${command} ${tool_opt}
+    ${start_cmd}    BuiltIn.Set_Variable    ${command} ${tool_opt}
+    BuiltIn.Log    ${start_cmd}
+    ${output}=    SSHLibrary.Write    ${start_cmd}
+    BuiltIn.Log    ${output}
+
+Start_Java_Tool_And_Verify_Connection
+    [Arguments]    ${command}    ${until_phrase}
+    ${start_cmd}    NexusKeywords.Compose_Full_Java_Command    ${command}
+    BuiltIn.Log    ${start_cmd}
+    SSHLibrary.Set_Client_Configuration    timeout=30s
+    SSHLibrary.Write    ${start_cmd}
+    ${output}=    SSHLibrary.Read_Until    ${until_phrase}
     BuiltIn.Log    ${output}
 
 Wait_Until_Console_Tool_Finish
@@ -31,10 +42,18 @@ Wait_Until_Console_Tool_Finish
 
 Stop_Console_Tool
     [Documentation]    Stop the tool if still running.
-    Utils.Write_Bare_Ctrl_C
+    RemoteBash.Write_Bare_Ctrl_C
     ${output}=    SSHLibrary.Read    delay=1s
     BuiltIn.Log    ${output}
 
+Stop_Console_Tool_And_Wait_Until_Prompt
+    [Documentation]    Stops the tool by sending ctrl+c
+    ${output}=    SSHLibrary.Read
+    BuiltIn.Log    ${output}
+    RemoteBash.Write_Bare_Ctrl_C
+    ${output}=    SSHLibrary.Read_Until_Prompt
+    BuiltIn.Log    ${output}
+
 Read_And_Fail_If_Prompt_Is_Seen
     [Documentation]    Try to read SSH to see prompt, but expect to see no prompt within SSHLibrary's timeout.
     ${passed}=    BuiltIn.Run_Keyword_And_Return_Status    BuiltIn.Run_Keyword_And_Expect_Error    No match found for '${ODL_SYSTEM_PROMPT}' in *.    Read_Text_Before_Prompt