Add Nexus artifact deployment initialization keyword
[integration/test.git] / csit / libraries / NetconfKeywords.robot
index d9a838c23772ae10508fa85302cd18b3aaef16e5..e420a64215412b7c3c37d4c2b406637ff3046b29 100644 (file)
@@ -25,6 +25,7 @@ ${FIRST_TESTTOOL_PORT}    17830
 ${BASE_NETCONF_DEVICE_PORT}    17830
 ${DEVICE_NAME_BASE}    netconf-scaling-device
 ${TESTTOOL_DEVICE_TIMEOUT}    60s
+${ENABLE_NETCONF_TEST_TIMEOUT}    ${ENABLE_GLOBAL_TEST_DEADLINES}
 
 *** Keywords ***
 Setup_NetconfKeywords
@@ -32,6 +33,7 @@ Setup_NetconfKeywords
     ${tmp}=    BuiltIn.Create_Dictionary
     BuiltIn.Set_Suite_Variable    ${NetconfKeywords__mounted_device_types}    ${tmp}
     NetconfViaRestconf.Setup_Netconf_Via_Restconf
+    NexusKeywords.Initialize_Artifact_Deployment_And_Usage
 
 Configure_Device_In_Netconf
     [Arguments]    ${device_name}    ${device_type}=default    ${device_port}=${FIRST_TESTTOOL_PORT}
@@ -42,15 +44,22 @@ Configure_Device_In_Netconf
 
 Count_Netconf_Connectors_For_Device
     [Arguments]    ${device_name}
-    [Documentation]    Count all Netconf connectors referring to the specified device (usually 0 or 1).
-    ${mounts}=    Utils.Get_Data_From_URI    operational    network-topology:network-topology/topology/topology-netconf
+    [Documentation]    Count all instances of the specified device in the Netconf topology (usually 0 or 1).
+    # FIXME: This no longer counts netconf connectors, it counts "device instances in Netconf topology".
+    # This keyword should be renamed but without an automatic keyword naming standards checker this is
+    # potentially destabilizing change so right now it is as FIXME. Proposed new name:
+    # Count_Device_Instances_In_Netconf_Topology
+    ${mounts}=    NetconfViaRestconf.Get_Operational_Data_From_URI    network-topology:network-topology/topology/topology-netconf
     Builtin.Log    ${mounts}
     ${actual_count}=    Builtin.Evaluate    len('''${mounts}'''.split('"node-id":"${device_name}"'))-1
     Builtin.Return_From_Keyword    ${actual_count}
 
 Check_Device_Has_No_Netconf_Connector
     [Arguments]    ${device_name}
-    [Documentation]    Check that there are no Netconf connectors referring to the specified device.
+    [Documentation]    Check that there are no instances of the specified device in the Netconf topology.
+    # FIXME: Similarlt to "Count_Netconf_Connectors_For_Device", this does not check whether the device has
+    # no netconf connector but whether the device is present in the netconf topology or not. Rename, proposed
+    # new name: Check_Device_Not_Present_In_Netconf_Topology
     ${count}    Count_Netconf_Connectors_For_Device    ${device_name}
     Builtin.Should_Be_Equal_As_Strings    ${count}    0
 
@@ -65,7 +74,7 @@ Check_Device_Completely_Gone
 Check_Device_Connected
     [Arguments]    ${device_name}
     [Documentation]    Check that the specified device is accessible from Netconf.
-    ${device_status}=    Utils.Get_Data_From_URI    operational    network-topology:network-topology/topology/topology-netconf/node/${device_name}
+    ${device_status}=    NetconfViaRestconf.Get_Operational_Data_From_URI    network-topology:network-topology/topology/topology-netconf/node/${device_name}
     Builtin.Should_Contain    ${device_status}    "netconf-node-topology:connection-status":"connected"
 
 Wait_Device_Connected
@@ -166,11 +175,16 @@ Stop_Testtool
     # the log file to get.
     SSHLibrary.Get_File    testtool.log
 
-NetconfKeywords__Perform_Operation_With_Checking_On_Next_Device
-    [Arguments]    ${operation}    ${deadline_Date}
+NetconfKeywords__Check_Netconf_Test_Timeout_Not_Expired
+    [Arguments]    ${deadline_Date}
+    BuiltIn.Return_From_Keyword_If    not ${ENABLE_NETCONF_TEST_TIMEOUT}
     ${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
+
+NetconfKeywords__Perform_Operation_With_Checking_On_Next_Device
+    [Arguments]    ${operation}    ${deadline_Date}
+    NetconfKeywords__Check_Netconf_Test_Timeout_Not_Expired    ${deadline_Date}
     ${number}=    BuiltIn.Evaluate    ${current_port}-${BASE_NETCONF_DEVICE_PORT}+1
     BuiltIn.Run_Keyword    ${operation}    ${DEVICE_NAME_BASE}-${number}
     ${next}=    BuiltIn.Evaluate    ${current_port}+1