Making OVS Switch Prompts configurable.
[integration/test.git] / test / csit / libraries / KarafKeywords.txt
index c991d2772861323f27a4468dfcff4f4055f5fc63..0be4ca024adbc8d5c701eb80c943d9a71fc09c47 100644 (file)
@@ -1,39 +1,76 @@
 *** Settings ***
 Library           SSHLibrary
 Library           OperatingSystem
+Variables         ../variables/Variables.py
 
 *** Variables ***
-${karaf_shell_port}     8101
-${karaf_prompt}         opendaylight-user
-${karaf_user}           karaf
-${karaf_password}       karaf
+${WORKSPACE}      /tmp
+${BUNDLEFOLDER}    distribution-karaf-0.3.0-SNAPSHOT
 
 *** Keywords ***
 Check Karaf Log File Does Not Have Messages
-    [Arguments]     ${ip}   ${message}  ${log_file}=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
-    ${output}=  Run Command On Remote System    ${ip}   grep ${message} ${log_file}
-    Should Not Contain  ${output}   ${message}
+    [Arguments]    ${ip}    ${message}    ${log_file}=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
+    ${output}=    Run Command On Remote System    ${ip}    grep ${message} ${log_file}
+    Should Not Contain    ${output}    ${message}
 
 Verify Feature Is Installed
-    [Documentation]     Will Succeed if the given ${feature_name} is found in the output of "feature:list -i"
-    [Arguments]     ${feature_name}     ${controller}=${CONTROLLER}     ${karaf_port}=${karaf_shell_port}
-    ${output}=  Issue Command On Karaf Console  feature:list -i | grep ${feature_name}     ${controller}   ${karaf_port}
-    Should Contain  ${output}   ${feature_name}
+    [Arguments]    ${feature_name}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}
+    [Documentation]    Will Succeed if the given ${feature_name} is found in the output of "feature:list -i"
+    ${output}=    Issue Command On Karaf Console    feature:list -i | grep ${feature_name}    ${controller}    ${karaf_port}
+    Should Contain    ${output}    ${feature_name}
     [Return]    ${output}
 
 Verify Feature Is Not Installed
-    [Documentation]     Will Succeed if the given ${feature_name} is NOT found in the output of "feature:list -i"
-    [Arguments]     ${feature_name}     ${controller}=${CONTROLLER}     ${karaf_port}=${karaf_shell_port}
-    ${output}=  Issue Command On Karaf Console  feature:list -i | grep ${feature_name}     ${controller}   ${karaf_port}
-    Should Not Contain  ${output}   ${feature_name}
+    [Arguments]    ${feature_name}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}
+    [Documentation]    Will Succeed if the given ${feature_name} is NOT found in the output of "feature:list -i"
+    ${output}=    Issue Command On Karaf Console    feature:list -i | grep ${feature_name}    ${controller}    ${karaf_port}
+    Should Not Contain    ${output}    ${feature_name}
     [Return]    ${output}
 
 Issue Command On Karaf Console
-    [Documentation]     Will execute the given ${cmd} by ssh'ing to the karaf console running on ${CONTROLLER}
-    [Arguments]     ${cmd}     ${controller}=${CONTROLLER}     ${karaf_port}=${karaf_shell_port}
-    Open Connection    ${controller}    port=${karaf_port}  prompt=${karaf_prompt}
-    Login    ${karaf_user}    ${karaf_password}
-    ${output}=  Execute Command     ${cmd}
+    [Arguments]    ${cmd}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}    ${timeout}=5
+    [Documentation]    Will execute the given ${cmd} by ssh'ing to the karaf console running on ${CONTROLLER}
+    Open Connection    ${controller}    port=${karaf_port}    prompt=${KARAF_PROMPT}    timeout=${timeout}
+    Login    ${KARAF_USER}    ${KARAF_PASSWORD}
+    Write    ${cmd}
+    ${output}    Read Until    ${KARAF_PROMPT}
     Close Connection
-    Log     ${output}
-    [Return]    ${output}
\ No newline at end of file
+    Log    ${output}
+    [Return]    ${output}
+
+Verify Bundle Is Installed
+    [Arguments]    ${bundle_name}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}
+    [Documentation]    Will succeed if the given ${bundle name} is present in the output of "bundle:list -s "
+    ${output}=    Issue Command On Karaf Console    bundle:list -s | grep ${bundle_name}    ${controller}    ${karaf_port}
+    Should Contain    ${output}    ${bundle_name}
+    [Return]    ${output}
+
+Verify Bundle Is Not Installed
+    [Arguments]    ${bundle_name}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}
+    [Documentation]    Will succeed if the given ${bundle_name} is NOT found in the output of "bundle:list -s"
+    ${output}=    Issue Command On Karaf Console    bundle:list -i | grep ${bundle_name}    ${controller}    ${karaf_port}
+    Should Not Contain    ${output}    ${bundle_name}
+    [Return]    ${output}
+
+Check Karaf Log Has Messages
+    [Arguments]    ${filter_string}    @{message_list}
+    [Documentation]    Will succeed if the @{messages} are found in \ the output of "log:display"
+    ${output}=    Issue Command On Karaf Console    log:display | grep ${filter_string}
+    : FOR    ${message}    IN    @{message_list}
+    \    Should Contain    ${output}    ${message}
+    [Return]    ${output}
+
+Install a Feature
+    [Arguments]    ${feature_name}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}    ${timeout}=15
+    [Documentation]    Will Install the given ${feature_name}
+    Log    ${timeout}
+    ${output}=    Issue Command On Karaf Console    feature:install ${feature_name}    ${controller}    ${karaf_port}    ${timeout}
+    Log    ${output}
+    [Return]    ${output}
+
+Uninstall a Feature
+    [Arguments]    ${feature_name}    ${controller}=${CONTROLLER}    ${karaf_port}=${KARAF_SHELL_PORT}    ${timeout}=15
+    [Documentation]    Will UnInstall the given ${feature_name}
+    ${output}=    Issue Command On Karaf Console    feature:uninstall ${feature_name}    ${controller}    ${karaf_port}    ${timeout}
+    Log    ${output}
+    [Return]    ${output}