Update Robot Framework format - step 5
[integration/test.git] / csit / suites / controller / dom_data_broker / ddb-sanity-prefix-based.robot
index 6aea55ad0c7e5699ad313b44660611548f973c57..8d4961aecd717f82211fac846adb3a655763c862 100644 (file)
@@ -1,39 +1,44 @@
 *** Settings ***
-Documentation     DOMDataBroker testing: Module based shards sanity suite
+Documentation       DOMDataBroker testing: Module based shards sanity suite
 ...
-...               Copyright (c) 2017 Cisco Systems, Inc. and others. All rights reserved.
+...                 Copyright (c) 2017 Cisco Systems, Inc. and others. All rights reserved.
 ...
-...               This program and the accompanying materials are made available under the
-...               terms of the Eclipse Public License v1.0 which accompanies this distribution,
-...               and is available at http://www.eclipse.org/legal/epl-v10.html
+...                 This program and the accompanying materials are made available under the
+...                 terms of the Eclipse Public License v1.0 which accompanies this distribution,
+...                 and is available at http://www.eclipse.org/legal/epl-v10.html
 ...
-...               The goal is to call several basic rpc form ClusterAdmin.robot and
-...               MdsalLowlevel.robot to ensute that those rpcs can be safely used in
-...               other suites.
-...               It also verify the ability of the odl-controller-test-app to perform
-...               several activities.
-Suite Setup       BuiltIn.Run_Keywords    SetupUtils.Setup_Utils_For_Setup_And_Teardown    http_timeout=125
-...               AND    DdbCommons.Create_Prefix_Based_Shard_And_Verify
-Suite Teardown    BuiltIn.Run_Keywords    DdbCommons.Remove_Prefix_Based_Shard_And_Verify
-...               AND    SSHLibrary.Close_All_Connections
-Test Setup        SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
-Test Teardown     SetupUtils.Teardown_Test_Show_Bugs_If_Test_Failed
-Default Tags      critical
-Library           SSHLibrary
-Library           ${CURDIR}/../../../libraries/MdsalLowlevelPy.py
-Resource          ${CURDIR}/../../../libraries/ClusterAdmin.robot
-Resource          ${CURDIR}/../../../libraries/ClusterManagement.robot
-Resource          ${CURDIR}/../../../libraries/controller/DdbCommons.robot
-Resource          ${CURDIR}/../../../libraries/SetupUtils.robot
+...                 The goal is to call several basic rpc form ClusterAdmin.robot and
+...                 MdsalLowlevel.robot to ensute that those rpcs can be safely used in
+...                 other suites.
+...                 It also verify the ability of the odl-controller-test-app to perform
+...                 several activities.
+
+Library             SSHLibrary
+Library             ${CURDIR}/../../../libraries/MdsalLowlevelPy.py
+Resource            ${CURDIR}/../../../libraries/ClusterAdmin.robot
+Resource            ${CURDIR}/../../../libraries/ClusterManagement.robot
+Resource            ${CURDIR}/../../../libraries/controller/DdbCommons.robot
+Resource            ${CURDIR}/../../../libraries/SetupUtils.robot
+
+Suite Setup         BuiltIn.Run_Keywords    SetupUtils.Setup_Utils_For_Setup_And_Teardown    http_timeout=125
+...                     AND    DdbCommons.Create_Prefix_Based_Shard_And_Verify
+Suite Teardown      BuiltIn.Run_Keywords    DdbCommons.Remove_Prefix_Based_Shard_And_Verify
+...                     AND    SSHLibrary.Close_All_Connections
+Test Setup          SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
+Test Teardown       SetupUtils.Teardown_Test_Show_Bugs_If_Test_Failed
+
+Default Tags        critical
+
 
 *** Variables ***
-${PREF_BASED_SHARD}    id-ints
-${SHARD_TYPE}     config
-${TRANSACTION_RATE_1K}    ${1000}
-${DURATION}       ${30}
-${SIMPLE_TX}      ${False}
-${CHAINED_TX}     ${True}
-${ID_PREFIX}      prefix-
+${PREF_BASED_SHARD}         id-ints
+${SHARD_TYPE}               config
+${TRANSACTION_RATE_1K}      ${1000}
+${DURATION}                 ${30}
+${SIMPLE_TX}                ${False}
+${CHAINED_TX}               ${True}
+${ID_PREFIX}                prefix-
+
 
 *** Test Cases ***
 Get_Prefix_Shard_Role
@@ -46,7 +51,11 @@ Get_Prefix_Shard_Role
 Subscribe_Listener_To_Leader
     [Documentation]    Subscribe listener to leader.
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${SHARD_NAME}    shard_type=${SHARD_TYPE}    member_index_list=${all_indices}    verify_restconf=False
+    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${SHARD_NAME}
+    ...    shard_type=${SHARD_TYPE}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     MdsalLowlevel.Subscribe_Ddtl    ${leader}
     BuiltIn.Sleep    5s
     ${copy_matches} =    MdsalLowlevel.Unsubscribe_Ddtl_No_Tx    ${leader}
@@ -55,7 +64,11 @@ Subscribe_Listener_To_Leader
 Subscribe_Listener_To_Follower
     [Documentation]    Subscribe listener to follower.
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${SHARD_NAME}    shard_type=${SHARD_TYPE}    member_index_list=${all_indices}    verify_restconf=False
+    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${SHARD_NAME}
+    ...    shard_type=${SHARD_TYPE}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     ${follower_idx} =    Collections.Get_From_List    ${follower_list}    ${0}
     MdsalLowlevel.Subscribe_Ddtl    ${follower_idx}
     BuiltIn.Sleep    5s
@@ -67,11 +80,22 @@ Become_Prefix_Leader
     ${shard_name} =    BuiltIn.Set_Variable    ${PREF_BASED_SHARD}
     ${shard_type} =    BuiltIn.Set_Variable    ${SHARD_TYPE}
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${old_leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${shard_name}!!    shard_type=${shard_type}    member_index_list=${all_indices}    verify_restconf=False
+    ${old_leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${shard_name}!!
+    ...    shard_type=${shard_type}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     ${follower1} =    Collections.Get_From_List    ${follower_list}    ${0}
     MdsalLowlevel.Become_Prefix_Leader    ${follower1}    ${shard_name}
-    ${leader}    ${follower_list} =    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    ClusterManagement.Verify_Shard_Leader_Elected    ${shard_name}!!
-    ...    ${shard_type}    ${True}    ${old_leader}    member_index_list=${EMPTY}
+    ${leader}    ${follower_list} =    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    ClusterManagement.Verify_Shard_Leader_Elected
+    ...    ${shard_name}!!
+    ...    ${shard_type}
+    ...    ${True}
+    ...    ${old_leader}
+    ...    member_index_list=${EMPTY}
     BuiltIn.Should_Be_Equal_As_Numbers    ${follower1}    ${leader}
 
 Remove_Leader_Prefix_Shard_Replica_And_Add_It_Back
@@ -79,14 +103,42 @@ Remove_Leader_Prefix_Shard_Replica_And_Add_It_Back
     ${shard_name} =    BuiltIn.Set_Variable    ${PREF_BASED_SHARD}
     ${shard_type} =    BuiltIn.Set_Variable    ${SHARD_TYPE}
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${old_leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${shard_name}!!    shard_type=${shard_type}    member_index_list=${all_indices}    verify_restconf=False
+    ${old_leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${shard_name}!!
+    ...    shard_type=${shard_type}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     ClusterAdmin.Remove_Prefix_Shard_Replica    ${old_leader}    ${shard_name}    member-${old_leader}    ${shard_type}
-    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    Verify_Shard_Replica_Not_Present    ${old_leader}    ${shard_name}!!    ${shard_type}
-    ${actual_leader}    ${actual_follower_list} =    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${shard_name}!!
-    ...    verify_restconf=False    shard_type=${shard_type}    member_index_list=${follower_list}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    Verify_Shard_Replica_Not_Present
+    ...    ${old_leader}
+    ...    ${shard_name}!!
+    ...    ${shard_type}
+    ${actual_leader}    ${actual_follower_list} =    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${shard_name}!!
+    ...    verify_restconf=False
+    ...    shard_type=${shard_type}
+    ...    member_index_list=${follower_list}
     BuiltIn.Should_Not_Be_Equal_As_Numbers    ${old_leader}    ${actual_leader}
-    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    ClusterAdmin.Add_Prefix_Shard_Replica    ${old_leader}    ${shard_name}    ${shard_type}
-    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${shard_name}!!    shard_type=${shard_type}    member_index_list=${all_indices}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    ClusterAdmin.Add_Prefix_Shard_Replica
+    ...    ${old_leader}
+    ...    ${shard_name}
+    ...    ${shard_type}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${shard_name}!!
+    ...    shard_type=${shard_type}
+    ...    member_index_list=${all_indices}
     ...    verify_restconf=False
 
 Remove_Follower_Prefix_Shard_Replica_And_Add_It_Back
@@ -94,23 +146,59 @@ Remove_Follower_Prefix_Shard_Replica_And_Add_It_Back
     ${shard_name} =    BuiltIn.Set_Variable    ${PREF_BASED_SHARD}
     ${shard_type} =    BuiltIn.Set_Variable    ${SHARD_TYPE}
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${shard_name}!!    shard_type=${shard_type}    member_index_list=${all_indices}    verify_restconf=False
+    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${shard_name}!!
+    ...    shard_type=${shard_type}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     ${follower1} =    Collections.Get_From_List    ${follower_list}    ${0}
     ClusterAdmin.Remove_Prefix_Shard_Replica    ${follower1}    ${shard_name}    member-${follower1}    ${shard_type}
-    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    DdbCommons.Verify_Shard_Replica_Not_Present    ${follower1}    ${shard_name}!!    ${shard_type}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    DdbCommons.Verify_Shard_Replica_Not_Present
+    ...    ${follower1}
+    ...    ${shard_name}!!
+    ...    ${shard_type}
     ${new_indices_list} =    ClusterManagement.List_Indices_Minus_Member    ${follower1}
-    ClusterManagement.Verify_Shard_Leader_Elected    ${shard_name}!!    ${shard_type}    ${False}    ${leader}    member_index_list=${new_indices_list}
-    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    ClusterAdmin.Add_Prefix_Shard_Replica    ${follower1}    ${shard_name}    ${shard_type}
-    BuiltIn.Wait_Until_Keyword_Succeeds    60s    5s    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${shard_name}!!    shard_type=${shard_type}    member_index_list=${all_indices}
+    ClusterManagement.Verify_Shard_Leader_Elected
+    ...    ${shard_name}!!
+    ...    ${shard_type}
+    ...    ${False}
+    ...    ${leader}
+    ...    member_index_list=${new_indices_list}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    ClusterAdmin.Add_Prefix_Shard_Replica
+    ...    ${follower1}
+    ...    ${shard_name}
+    ...    ${shard_type}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    60s
+    ...    5s
+    ...    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${shard_name}!!
+    ...    shard_type=${shard_type}
+    ...    member_index_list=${all_indices}
     ...    verify_restconf=False
 
 Produce_Transactions_One_Node_Leader
     [Documentation]    Produce transactions.
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${SHARD_NAME}    shard_type=${SHARD_TYPE}    member_index_list=${all_indices}    verify_restconf=False
+    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${SHARD_NAME}
+    ...    shard_type=${SHARD_TYPE}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     ${leader_idx_as_list} =    BuiltIn.Create_List    ${leader}
     ${leader_ip_as_list} =    ClusterManagement.Resolve_IP_Address_For_Members    ${leader_idx_as_list}
-    MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes    ${leader_ip_as_list}    ${leader_idx_as_list}    ${ID_PREFIX}    ${DURATION}    ${TRANSACTION_RATE_1K}
+    MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes
+    ...    ${leader_ip_as_list}
+    ...    ${leader_idx_as_list}
+    ...    ${ID_PREFIX}
+    ...    ${DURATION}
+    ...    ${TRANSACTION_RATE_1K}
     ${resp_list} =    MdsalLowlevelPy.Wait_For_Transactions
     FOR    ${resp}    IN    @{resp_list}
         TemplatedRequests.Check_Status_Code    ${resp}[2]
@@ -119,11 +207,20 @@ Produce_Transactions_One_Node_Leader
 Produce_Transactions_One_Node_Follower
     [Documentation]    Produce transactions.
     ${all_indices} =    ClusterManagement.List_All_Indices
-    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard    shard_name=${SHARD_NAME}    shard_type=${SHARD_TYPE}    member_index_list=${all_indices}    verify_restconf=False
+    ${leader}    ${follower_list} =    ClusterManagement.Get_Leader_And_Followers_For_Shard
+    ...    shard_name=${SHARD_NAME}
+    ...    shard_type=${SHARD_TYPE}
+    ...    member_index_list=${all_indices}
+    ...    verify_restconf=False
     ${follower_idx} =    Collections.Get_From_List    ${follower_list}    ${0}
     ${follower_idx_as_list} =    BuiltIn.Create_List    ${follower_idx}
     ${follower_ip_as_list} =    ClusterManagement.Resolve_IP_Address_For_Members    ${follower_idx_as_list}
-    MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes    ${follower_ip_as_list}    ${follower_idx_as_list}    ${ID_PREFIX}    ${DURATION}    ${TRANSACTION_RATE_1K}
+    MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes
+    ...    ${follower_ip_as_list}
+    ...    ${follower_idx_as_list}
+    ...    ${ID_PREFIX}
+    ...    ${DURATION}
+    ...    ${TRANSACTION_RATE_1K}
     ${resp_list} =    MdsalLowlevelPy.Wait_For_Transactions
     FOR    ${resp}    IN    @{resp_list}
         TemplatedRequests.Check_Status_Code    ${resp}[2]
@@ -133,7 +230,12 @@ Produce_Transactions
     [Documentation]    Produce transactions.
     ${all_indices} =    ClusterManagement.List_All_Indices
     ${all_ip_list} =    ClusterManagement.Resolve_IP_Address_For_Members    ${all_indices}
-    MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes    ${all_ip_list}    ${all_indices}    ${ID_PREFIX}    ${DURATION}    ${TRANSACTION_RATE_1K}
+    MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes
+    ...    ${all_ip_list}
+    ...    ${all_indices}
+    ...    ${ID_PREFIX}
+    ...    ${DURATION}
+    ...    ${TRANSACTION_RATE_1K}
     ${resp_list} =    MdsalLowlevelPy.Wait_For_Transactions
     FOR    ${resp}    IN    @{resp_list}
         TemplatedRequests.Check_Status_Code    ${resp}[2]