aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/robot/honeycomb
diff options
context:
space:
mode:
authorselias <samelias@cisco.com>2016-09-13 16:51:37 +0200
committerPeter Mikus <pmikus@cisco.com>2016-10-03 06:41:33 +0000
commit19c91adadd57bfc4e7514993b2a711a826d52e04 (patch)
tree5c7656c69c6a3936838c5c6ddcf9313e7e98a6ba /resources/libraries/robot/honeycomb
parentc75b9804c9510d0a342563e41407089145b38d50 (diff)
CSIT-405: Honeycomb test update and cleanup
- update suite setup and constants to allow test runs again - cleanup basic interface keywords - cleanup L2-fib test data - add "continue on failure" keyword to some partially failing tests - add teardown to all suites, restarts honeycomb if suite had test failures - fix minor PEP-8 violations in Topology.py Change-Id: Ic5b434af71f77855f81461b280299b8318932c5a Signed-off-by: selias <samelias@cisco.com>
Diffstat (limited to 'resources/libraries/robot/honeycomb')
-rw-r--r--resources/libraries/robot/honeycomb/honeycomb.robot24
-rw-r--r--resources/libraries/robot/honeycomb/interfaces.robot3
-rw-r--r--resources/libraries/robot/honeycomb/persistence.robot2
-rw-r--r--resources/libraries/robot/honeycomb/vxlan_gpe.robot18
4 files changed, 40 insertions, 7 deletions
diff --git a/resources/libraries/robot/honeycomb/honeycomb.robot b/resources/libraries/robot/honeycomb/honeycomb.robot
index c04bd23a57..698b20f83f 100644
--- a/resources/libraries/robot/honeycomb/honeycomb.robot
+++ b/resources/libraries/robot/honeycomb/honeycomb.robot
@@ -14,6 +14,7 @@
*** Settings ***
| Library | resources/libraries/python/honeycomb/HoneycombSetup.py
| Library | resources/libraries/python/honeycomb/HoneycombUtil.py
+| Library | resources/libraries/python/honeycomb/HcPersistence.py
*** Keywords ***
| Setup Honeycomb service on DUTs
@@ -36,7 +37,7 @@
| | ...
| | [Arguments] | @{duts}
| | Start honeycomb on DUTs | @{duts}
-| | Wait until keyword succeeds | 4min | 20sec
+| | Wait until keyword succeeds | 1min | 10sec
| | ... | Check honeycomb startup state | @{duts}
| Stop honeycomb service on DUTs
@@ -58,7 +59,7 @@
| | ...
| | [Arguments] | @{duts}
| | Stop honeycomb on DUTs | @{duts}
-| | Wait until keyword succeeds | 2m | 10s
+| | Wait until keyword succeeds | 30sec | 5sec
| | ... | Check honeycomb shutdown state | @{duts}
| Clear persisted Honeycomb configuration
@@ -71,4 +72,21 @@
| | ...
| | ... | \| Clear persisted Honeycomb configuration \| ${nodes['DUT1']} \|
| | [Arguments] | @{duts}
-| | Clear persisted Honeycomb config | @{duts} \ No newline at end of file
+| | Clear persisted Honeycomb config | @{duts}
+
+| Restart Honeycomb and VPP and clear persisted configuration
+| | [Documentation] | Restarts Honeycomb and VPP with default configuration.
+| | ...
+| | ... | *Arguments:*
+| | ... | - node - information about a DUT node. Type: dictionary
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| Restart Honeycomb and VPP and clear persisted configuration \
+| | ... | \| ${nodes['DUT1']} \|
+| | [Arguments] | ${node}
+| | Log | Performing clean restart of Honeycomb and VPP. | console=True
+| | Stop Honeycomb service on DUTs | ${node}
+| | Clear persisted Honeycomb configuration | ${node}
+| | Setup DUT | ${node}
+| | Setup Honeycomb service on DUTs | ${node} \ No newline at end of file
diff --git a/resources/libraries/robot/honeycomb/interfaces.robot b/resources/libraries/robot/honeycomb/interfaces.robot
index 81b5d82048..f94d03d7d4 100644
--- a/resources/libraries/robot/honeycomb/interfaces.robot
+++ b/resources/libraries/robot/honeycomb/interfaces.robot
@@ -190,7 +190,7 @@
| | ... | ${api_data['ietf-ip:ipv4']['neighbor'][0]['link-layer-address']}
| | :FOR | ${key} | IN | @{settings.keys()}
| | | Should be equal
-| | | ... | ${settings['{key']} | ${api_data['ietf-ip:ipv4']['{$key}']}
+| | | ... | ${settings['${key}']} | ${api_data['ietf-ip:ipv4']['${key}']}
| IPv4 config from VAT should be
| | [Documentation] | Retrieves interface ipv4 configuration through VAT and\
@@ -209,7 +209,6 @@
| | [Arguments] | ${node} | ${interface} | ${address} | ${netmask}
| | ${vpp_data}= | interfaceCLI.VPP get interface ip addresses
| | ... | ${node} | ${interface} | ipv4
-#TODO: update based on resolution of bug https://jira.fd.io/browse/VPP-132
| | Should be equal | ${vpp_data[0]['ip']} | ${address}
| | Should be equal | ${vpp_data[0]['netmask']} | ${netmask}
diff --git a/resources/libraries/robot/honeycomb/persistence.robot b/resources/libraries/robot/honeycomb/persistence.robot
index aacf560f1d..6d2cc1f2e3 100644
--- a/resources/libraries/robot/honeycomb/persistence.robot
+++ b/resources/libraries/robot/honeycomb/persistence.robot
@@ -14,7 +14,7 @@
*** Settings ***
| Library | resources.libraries.python.honeycomb.HcAPIKwInterfaces.InterfaceKeywords
| ... | WITH NAME | InterfaceAPI
-| Library | resources.libraries.python.honeycomb.HcPersistence
+| Library | resources/libraries/python/honeycomb/HcPersistence.py
| Resource | resources/libraries/robot/honeycomb/honeycomb.robot
| Resource | resources/libraries/robot/honeycomb/interfaces.robot
| Resource | resources/libraries/robot/honeycomb/vxlan.robot
diff --git a/resources/libraries/robot/honeycomb/vxlan_gpe.robot b/resources/libraries/robot/honeycomb/vxlan_gpe.robot
index 364a23228c..ef20ed946c 100644
--- a/resources/libraries/robot/honeycomb/vxlan_gpe.robot
+++ b/resources/libraries/robot/honeycomb/vxlan_gpe.robot
@@ -153,9 +153,25 @@
| | Should be equal as strings
| | ... | ${api_data['if-index']} | ${sw_if_index}
+| VxLAN GPE configuration from Honeycomb should be empty
+| | [Documentation] | Uses Honeycomb API to get operational data about\
+| | ... | the given interface and expects to fail.
+| | ...
+| | ... | *Arguments:*
+| | ... | - node - information about a DUT node. Type: dictionary
+| | ...
+| | ... | *Example:*
+| | ... | \| VxLAN GPE configuration from Honeycomb should be empty\
+| | ... | \| ${nodes['DUT1']} \| vxlan_gpe_tunnel0 \|
+| | ...
+| | [Arguments] | ${node} | ${interface}
+| | ...
+| | ${api_data}= | interfaceAPI.Get interface oper data | ${node} | ${interface}
+| | Should be empty | ${api_data}
+
| VxLAN GPE configuration from VAT should be empty
| | [Documentation] | Uses VAT to get operational data about the given\
-| | ... | interface and expects empty dictionary.
+| | ... | interface and expects an empty dictionary.
| | ...
| | ... | *Arguments:*
| | ... | - node - information about a DUT node. Type: dictionary