Scalability Of Pods In COE
[integration/test.git] / csit / suites / coe / Pods_Basic_Connectivity_Tests.robot
1 *** Settings ***
2 Suite Setup       Coe Suite Setup
3 Suite Teardown    Coe Suite Teardown
4 Test Teardown     Coe.Tear Down
5 Library           BuiltIn
6 Library           SSHLibrary
7 Library           String
8 Resource          ../../libraries/Coe.robot
9 Resource          ../../libraries/DataModels.robot
10 Resource          ../../libraries/SSHKeywords.robot
11 Resource          ../../libraries/Utils.robot
12 Resource          ../../variables/netvirt/Variables.robot
13 Resource          ../../variables/Variables.robot
14
15 *** Variables ***
16 @{BB_NAMES}       busybox1    busybox2    busybox3    busybox4
17 @{BUSY_BOXES}     busy-box-1.yaml    busy-box-2.yaml    busy-box-3.yaml    busy-box-4.yaml
18
19 *** Test Cases ***
20 Verify L2 Connectivity Between Pods
21     [Documentation]    This testcase verifies the connectivity between pods brought up on the same node.Pods are brought on the same node by using the same node selector in busybox.yaml files.
22     Coe.Create Pods    ssd    ${BUSY_BOXES[0]}    ${BB_NAMES[0]}
23     Coe.Create Pods    ssd    ${BUSY_BOXES[1]}    ${BB_NAMES[1]}
24     BuiltIn.Wait Until Keyword Succeeds    55s    2s    Coe.Check Pod Status Is Running
25     Coe.Collect Pod Names and Ping
26
27 Verify L3 Connectivity Between Pods
28     [Documentation]    This testcase verifies the connectivity between pods brought up on different nodes.Nodes are given different labels(eg : ssd,ssl) through Coe.Label Nodes keyword.
29     ...    These labels are also inlcuded as node selectors in busybox.yaml files ,thus the pods are placed on the desired nodes avoiding random allocation of pods.
30     ...    For the pod to be eligible to run on a node, the node must have each of the indicated key-value pairs as labels.
31     Coe.Create Pods    ssd    ${BUSY_BOXES[2]}    ${BB_NAMES[2]}
32     Coe.Create Pods    ssl    ${BUSY_BOXES[3]}    ${BB_NAMES[3]}
33     BuiltIn.Wait Until Keyword Succeeds    55s    2s    Coe.Check Pod Status Is Running
34     Coe.Collect Pod Names and Ping