Integration Tests only: nxos_udld, nxos_udld_interface, nxos_vxlan_vtep_vni (#29143)

* it cases for vxlan_vtep_vni, udld

* platform specific testing

* fix vxlan_vtep for n7k

* fix udld_intf setup

* skip udld tests on titanium n7k

* remove hardcoding

* fix udld tests for titanium
This commit is contained in:
saichint 2017-11-15 23:39:59 -08:00 committed by Trishna Guha
commit aef50eaa40
28 changed files with 609 additions and 22 deletions

View file

@ -0,0 +1,2 @@
---
testcase: "*"

View file

@ -0,0 +1,2 @@
dependencies:
- prepare_nxos_tests

View file

@ -0,0 +1,15 @@
---
- name: collect all cli test cases
find:
paths: "{{ role_path }}/tests/cli"
patterns: "{{ testcase }}.yaml"
register: test_cases
- name: set test_items
set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}"
- name: run test case
include: "{{ test_case_to_run }}"
with_items: "{{ test_items }}"
loop_control:
loop_var: test_case_to_run

View file

@ -0,0 +1,7 @@
---
# Use block to ensure that both cli and nxapi tests
# will run even if there are failures or errors.
- block:
- { include: cli.yaml, tags: ['cli'] }
always:
- { include: nxapi.yaml, tags: ['nxapi'] }

View file

@ -0,0 +1,28 @@
---
- name: collect all nxapi test cases
find:
paths: "{{ role_path }}/tests/nxapi"
patterns: "{{ testcase }}.yaml"
register: test_cases
- name: set test_items
set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}"
- name: enable nxapi
nxos_config:
lines:
- feature nxapi
- nxapi http port 80
provider: "{{ cli }}"
- name: run test case
include: "{{ test_case_to_run }}"
with_items: "{{ test_items }}"
loop_control:
loop_var: test_case_to_run
- name: disable nxapi
nxos_config:
lines:
- no feature nxapi
provider: "{{ cli }}"

View file

@ -0,0 +1,4 @@
---
- set_fact: connection="{{ cli }}"
- import_tasks: targets/nxos_udld_interface/tests/common/sanity.yaml

View file

@ -0,0 +1,74 @@
---
- debug: msg="START TRANSPORT:{{ connection.transport }} nxos_udld_interface sanity test"
- set_fact: udld_run="true"
- set_fact: udld_run="false"
when: ((platform | search('N9K-F')) and (imagetag and (imagetag | version_compare('F3', 'lt'))))
- set_fact: udld_run="false"
when: titanium
# Select interface for test
- set_fact: intname="{{ nxos_int1 }}"
- block:
- name: "Enable feature udld"
nxos_feature:
feature: udld
state: enabled
provider: "{{ connection }}"
- name: "put the interface into default state"
nxos_config:
commands:
- "default interface {{intname}}"
provider: "{{ connection }}"
match: none
- name: ensure interface is configured to be in aggressive mode
nxos_udld_interface: &conf1
interface: "{{ intname }}"
mode: aggressive
state: present
provider: "{{ connection }}"
register: result
- assert: &true
that:
- "result.changed == true"
- name: "Conf1 Idempotence"
nxos_udld_interface: *conf1
register: result
- assert: &false
that:
- "result.changed == false"
- name: ensure interface has mode enabled
nxos_udld_interface: &conf2
interface: "{{ intname }}"
mode: enabled
state: present
provider: "{{ connection }}"
register: result
- assert: *true
- name: Remove the config
nxos_udld_interface: &remove
interface: "{{ intname }}"
mode: enabled
state: absent
provider: "{{ connection }}"
when: udld_run
always:
- name: "Disable udld"
nxos_feature:
feature: udld
state: disabled
provider: "{{ connection }}"
ignore_errors: yes
- debug: msg="END TRANSPORT:{{ connection.transport }} nxos_udld_interface sanity test"

View file

@ -0,0 +1,4 @@
---
- set_fact: connection="{{ nxapi }}"
- import_tasks: targets/nxos_udld_interface/tests/common/sanity.yaml