Migrate Get Requests invocations(libraries)
[integration/test.git] / csit / suites / controller / Clustering_Datastore / buycar_failover.robot
index da6983664cf5dd47a6de2832eb14b20cee780e10..e1dd81e7390a7d19064b8a57c5cd9be110f95302 100644 (file)
@@ -1,41 +1,55 @@
 *** Settings ***
-Documentation     This test focuses on testing buy-car RPC over 3 Leader reboots.
+Documentation       This test focuses on testing buy-car RPC over 3 Leader reboots.
 ...
-...               Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+...                 Copyright (c) 2016 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
 ...
 ...
-...               All purchases are against the same node, which is the first one to get rebooted.
+...                 All purchases are against the same node, which is the first one to get rebooted.
 ...
-...               All data is deleted at the end of the suite.
-...               This suite expects car, people and car-people modules to have separate Shards.
-Suite Setup       Setup
-Test Setup        SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
-Default Tags      clustering    carpeople    critical
-Library           Collections
-Resource          ${CURDIR}/../../../libraries/CarPeople.robot
-Resource          ${CURDIR}/../../../libraries/ClusterManagement.robot
-Resource          ${CURDIR}/../../../libraries/SetupUtils.robot
-Resource          ${CURDIR}/../../../libraries/TemplatedRequests.robot
-Variables         ${CURDIR}/../../../variables/Variables.py
+...                 All data is deleted at the end of the suite.
+...                 This suite expects car, people and car-people modules to have separate Shards.
+
+Library             Collections
+Resource            ${CURDIR}/../../../libraries/CarPeople.robot
+Resource            ${CURDIR}/../../../libraries/ClusterManagement.robot
+Resource            ${CURDIR}/../../../libraries/SetupUtils.robot
+Resource            ${CURDIR}/../../../libraries/TemplatedRequests.robot
+Variables           ${CURDIR}/../../../variables/Variables.py
+
+Suite Setup         Setup
+Test Setup          SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
+
+Default Tags        clustering    carpeople    critical
+
 
 *** Variables ***
-${CARPEOPLE_ITEMS}    ${100}
-${MEMBER_START_TIMEOUT}    300s
-@{SHARD_NAME_LIST}    car    people    car-people
-${VAR_DIR}        ${CURDIR}/../../../variables/carpeople/crud
+${CARPEOPLE_ITEMS}          ${100}
+${MEMBER_START_TIMEOUT}     300s
+@{SHARD_NAME_LIST}          car    people    car-people
+${VAR_DIR}                  ${CURDIR}/../../../variables/carpeople/crud
+
 
 *** Test Cases ***
 Add_Cars_To_Leader_And_Verify
     [Documentation]    Add all needed cars to car Leader, verify on each member.
     ${car_items} =    BuiltIn.Evaluate    ${CARPEOPLE_ITEMS} * 4
-    TemplatedRequests.Put_As_Json_Templated    folder=${VAR_DIR}/cars    session=${car_leader_session}    iterations=${car_items}
+    TemplatedRequests.Put_As_Json_Templated
+    ...    folder=${VAR_DIR}/cars
+    ...    session=${car_leader_session}
+    ...    iterations=${car_items}
     FOR    ${session}    IN    @{ClusterManagement__session_list}
-        BuiltIn.Wait_Until_Keyword_Succeeds    10s    2s    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/cars    session=${session}
-        ...    verify=True    iterations=${car_items}
+        BuiltIn.Wait_Until_Keyword_Succeeds
+        ...    10s
+        ...    2s
+        ...    TemplatedRequests.Get_As_Json_Templated
+        ...    folder=${VAR_DIR}/cars
+        ...    session=${session}
+        ...    verify=True
+        ...    iterations=${car_items}
     END
 
 Add_People_To_First_Follower_And_Verify
@@ -43,54 +57,104 @@ Add_People_To_First_Follower_And_Verify
     ${people_items} =    BuiltIn.Evaluate    ${CARPEOPLE_ITEMS} * 4
     CarPeople.Add_Several_People    session=${people_first_follower_session}    iterations=${people_items}
     FOR    ${session}    IN    @{ClusterManagement__session_list}
-        BuiltIn.Wait_Until_Keyword_Succeeds    10s    2s    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/people    session=${session}
-        ...    verify=True    iterations=${people_items}
+        BuiltIn.Wait_Until_Keyword_Succeeds
+        ...    10s
+        ...    2s
+        ...    TemplatedRequests.Get_As_Json_Templated
+        ...    folder=${VAR_DIR}/people
+        ...    session=${session}
+        ...    verify=True
+        ...    iterations=${people_items}
     END
 
 Buy_Cars_On_Leader_And_Verify
     [Documentation]    Buy some cars on the leader member.
     ${iter_start} =    BuiltIn.Evaluate    0 * ${CARPEOPLE_ITEMS} + 1
-    CarPeople.Buy_Several_Cars    session=${car-people_leader_session}    iterations=${CARPEOPLE_ITEMS}    iter_start=${iter_start}
+    CarPeople.Buy_Several_Cars
+    ...    session=${car-people_leader_session}
+    ...    iterations=${CARPEOPLE_ITEMS}
+    ...    iter_start=${iter_start}
     ${total_iterations} =    BuiltIn.Evaluate    1 * ${CARPEOPLE_ITEMS}
     FOR    ${session}    IN    @{ClusterManagement__session_list}
-        BuiltIn.Wait_Until_Keyword_Succeeds    10s    2s    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/car-people    session=${session}
-        ...    verify=True    iterations=${total_iterations}
+        BuiltIn.Wait_Until_Keyword_Succeeds
+        ...    10s
+        ...    2s
+        ...    TemplatedRequests.Get_As_Json_Templated
+        ...    folder=${VAR_DIR}/car-people
+        ...    session=${session}
+        ...    verify=True
+        ...    iterations=${total_iterations}
     END
 
 Buy_Cars_On_Follower_And_Verify
     [Documentation]    Buy some cars on the first follower member.
     ${iter_start} =    BuiltIn.Evaluate    1 * ${CARPEOPLE_ITEMS} + 1
-    CarPeople.Buy_Several_Cars    session=${car-people_first_follower_session}    iterations=${CARPEOPLE_ITEMS}    iter_start=${iter_start}
+    CarPeople.Buy_Several_Cars
+    ...    session=${car-people_first_follower_session}
+    ...    iterations=${CARPEOPLE_ITEMS}
+    ...    iter_start=${iter_start}
     ${total_iterations} =    BuiltIn.Evaluate    2 * ${CARPEOPLE_ITEMS}
     FOR    ${session}    IN    @{ClusterManagement__session_list}
-        BuiltIn.Wait_Until_Keyword_Succeeds    10s    2s    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/car-people    session=${session}
-        ...    verify=True    iterations=${total_iterations}
+        BuiltIn.Wait_Until_Keyword_Succeeds
+        ...    10s
+        ...    2s
+        ...    TemplatedRequests.Get_As_Json_Templated
+        ...    folder=${VAR_DIR}/car-people
+        ...    session=${session}
+        ...    verify=True
+        ...    iterations=${total_iterations}
     END
 
 Reboot_People_Leader
     [Documentation]    Previous people Leader is rebooted. We should never stop the people first follower, this is where people are registered.
     ClusterManagement.Stop_Single_Member    ${people_leader_index}    confirm=True
-    ClusterManagement.Start_Single_Member    ${people_leader_index}    wait_for_sync=True    timeout=${MEMBER_START_TIMEOUT}
-    BuiltIn.Wait_Until_Keyword_Succeeds    30s    2s    ClusterManagement.Verify_Leader_Exists_For_Each_Shard    shard_name_list=${SHARD_NAME_LIST}    shard_type=config
+    ClusterManagement.Start_Single_Member
+    ...    ${people_leader_index}
+    ...    wait_for_sync=True
+    ...    timeout=${MEMBER_START_TIMEOUT}
+    BuiltIn.Wait_Until_Keyword_Succeeds
+    ...    30s
+    ...    2s
+    ...    ClusterManagement.Verify_Leader_Exists_For_Each_Shard
+    ...    shard_name_list=${SHARD_NAME_LIST}
+    ...    shard_type=config
 
 Buy_Cars_On_Leader_After_Reboot_And_Verify
     [Documentation]    Buy some cars on the leader member.
     ${iter_start} =    BuiltIn.Evaluate    2 * ${CARPEOPLE_ITEMS} + 1
-    CarPeople.Buy_Several_Cars    session=${car-people_leader_session}    iterations=${CARPEOPLE_ITEMS}    iter_start=${iter_start}
+    CarPeople.Buy_Several_Cars
+    ...    session=${car-people_leader_session}
+    ...    iterations=${CARPEOPLE_ITEMS}
+    ...    iter_start=${iter_start}
     ${total_iterations} =    BuiltIn.Evaluate    3 * ${CARPEOPLE_ITEMS}
     FOR    ${session}    IN    @{ClusterManagement__session_list}
-        BuiltIn.Wait_Until_Keyword_Succeeds    10s    2s    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/car-people    session=${session}
-        ...    verify=True    iterations=${total_iterations}
+        BuiltIn.Wait_Until_Keyword_Succeeds
+        ...    10s
+        ...    2s
+        ...    TemplatedRequests.Get_As_Json_Templated
+        ...    folder=${VAR_DIR}/car-people
+        ...    session=${session}
+        ...    verify=True
+        ...    iterations=${total_iterations}
     END
 
 Buy_Cars_On_Follower_After_Reboot_And_Verify
     [Documentation]    Buy some cars on the first follower member.
     ${iter_start} =    BuiltIn.Evaluate    3 * ${CARPEOPLE_ITEMS} + 1
-    CarPeople.Buy_Several_Cars    session=${car-people_first_follower_session}    iterations=${CARPEOPLE_ITEMS}    iter_start=${iter_start}
+    CarPeople.Buy_Several_Cars
+    ...    session=${car-people_first_follower_session}
+    ...    iterations=${CARPEOPLE_ITEMS}
+    ...    iter_start=${iter_start}
     ${total_iterations} =    BuiltIn.Evaluate    4 * ${CARPEOPLE_ITEMS}
     FOR    ${session}    IN    @{ClusterManagement__session_list}
-        BuiltIn.Wait_Until_Keyword_Succeeds    10s    2s    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/car-people    session=${session}
-        ...    verify=True    iterations=${total_iterations}
+        BuiltIn.Wait_Until_Keyword_Succeeds
+        ...    10s
+        ...    2s
+        ...    TemplatedRequests.Get_As_Json_Templated
+        ...    folder=${VAR_DIR}/car-people
+        ...    session=${session}
+        ...    verify=True
+        ...    iterations=${total_iterations}
     END
 
 Delete_All_CarPeople
@@ -105,6 +169,7 @@ Delete_All_Cars
     [Documentation]    DELETE cars container. No verification beyond http status.
     TemplatedRequests.Delete_Templated    folder=${VAR_DIR}/cars    session=${car_leader_session}
 
+
 *** Keywords ***
 Setup
     [Documentation]    Initialize resources, memorize shard leaders, compute item distribution.