summaryrefslogtreecommitdiff
path: root/test/integration/targets/vyos_lldp_interface
diff options
context:
space:
mode:
authorBradley A. Thornton <bthornto@thethorntons.net>2019-08-08 11:12:58 -0700
committerBradley A. Thornton <bthornto@thethorntons.net>2019-08-08 11:12:58 -0700
commit5472435af823398fc63e049d7efe0938b532f3c9 (patch)
tree07e251ff7a549aec3e7c9a21da0fee92f56f8aa0 /test/integration/targets/vyos_lldp_interface
parentba99fb9d041f63f5d300956daabefeb0a86edb06 (diff)
downloadvyos.vyos-5472435af823398fc63e049d7efe0938b532f3c9.tar.gz
vyos.vyos-5472435af823398fc63e049d7efe0938b532f3c9.zip
network integration tests
Diffstat (limited to 'test/integration/targets/vyos_lldp_interface')
-rw-r--r--test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/aliases0
-rw-r--r--test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/defaults/main.yaml3
-rw-r--r--test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/cli.yaml22
-rw-r--r--test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/main.yaml2
-rw-r--r--test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/basic.yaml167
-rw-r--r--test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/net_lldp_interface.yaml26
6 files changed, 220 insertions, 0 deletions
diff --git a/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/aliases b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/aliases
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/aliases
diff --git a/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/defaults/main.yaml b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/defaults/main.yaml
new file mode 100644
index 00000000..9ef5ba51
--- /dev/null
+++ b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/defaults/main.yaml
@@ -0,0 +1,3 @@
+---
+testcase: "*"
+test_items: []
diff --git a/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/cli.yaml b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/cli.yaml
new file mode 100644
index 00000000..890d3acf
--- /dev/null
+++ b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/cli.yaml
@@ -0,0 +1,22 @@
+---
+- name: collect all cli test cases
+ find:
+ paths: "{{ role_path }}/tests/cli"
+ patterns: "{{ testcase }}.yaml"
+ register: test_cases
+ delegate_to: localhost
+
+- name: set test_items
+ set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}"
+
+- name: run test case (connection=network_cli)
+ include: "{{ test_case_to_run }} ansible_connection=network_cli"
+ with_items: "{{ test_items }}"
+ loop_control:
+ loop_var: test_case_to_run
+
+- name: run test case (connection=local)
+ include: "{{ test_case_to_run }} ansible_connection=local"
+ with_first_found: "{{ test_items }}"
+ loop_control:
+ loop_var: test_case_to_run
diff --git a/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/main.yaml b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/main.yaml
new file mode 100644
index 00000000..415c99d8
--- /dev/null
+++ b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tasks/main.yaml
@@ -0,0 +1,2 @@
+---
+- { include: cli.yaml, tags: ['cli'] }
diff --git a/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/basic.yaml b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/basic.yaml
new file mode 100644
index 00000000..362d1817
--- /dev/null
+++ b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/basic.yaml
@@ -0,0 +1,167 @@
+---
+- debug: msg="START cli/basic.yaml on connection={{ ansible_connection }}"
+
+- name: Make sure LLDP is not running before tests
+ vyos_config:
+ lines: delete service lldp
+
+- name: Create LLDP configuration
+ vyos_lldp_interface:
+ name: eth1
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"set service lldp interface eth1" in result.commands'
+
+- name: Create LLDP configuration again (idempotent)
+ vyos_lldp_interface:
+ name: eth1
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
+
+- name: Disable LLDP configuration
+ vyos_lldp_interface:
+ name: eth1
+ state: disabled
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"set service lldp interface eth1 disable" in result.commands'
+
+- name: Disable LLDP configuration again (idempotent)
+ vyos_lldp_interface:
+ name: eth1
+ state: disabled
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
+
+- name: Enable LLDP configuration
+ vyos_lldp_interface:
+ name: eth1
+ state: enabled
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"delete service lldp interface eth1 disable" in result.commands'
+
+- name: Enable LLDP configuration again (idempotent)
+ vyos_lldp_interface:
+ name: eth1
+ state: enabled
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
+
+- name: Delete LLDP configuration
+ vyos_lldp_interface:
+ name: eth1
+ state: absent
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"delete service lldp interface eth1" in result.commands'
+
+- name: Delete LLDP configuration again (idempotent)
+ vyos_lldp_interface:
+ name: eth1
+ state: absent
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
+
+- name: Create aggregate of LLDP interface configurations
+ vyos_lldp_interface:
+ aggregate:
+ - name: eth1
+ - name: eth2
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"set service lldp interface eth1" in result.commands'
+ - '"set service lldp interface eth2" in result.commands'
+
+- name: Create aggregate of LLDP interface configurations again (idempotent)
+ vyos_lldp_interface:
+ aggregate:
+ - name: eth1
+ - name: eth2
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
+
+- name: Override LLDP interface configuration on aggregate
+ vyos_lldp_interface:
+ aggregate:
+ - name: eth1
+ - { name: eth2, state: disabled }
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"set service lldp interface eth2 disable" in result.commands'
+
+- name: Override LLDP interface configuration on aggregate again (idempotent)
+ vyos_lldp_interface:
+ aggregate:
+ - name: eth1
+ - { name: eth2, state: disabled }
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
+
+- name: Delete aggregate of LLDP interface configurations
+ vyos_lldp_interface:
+ aggregate:
+ - name: eth1
+ - name: eth2
+ state: absent
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"delete service lldp interface eth1" in result.commands'
+ - '"delete service lldp interface eth2" in result.commands'
+
+- name: Delete aggregate of LLDP interface configurations (idempotent)
+ vyos_lldp_interface:
+ aggregate:
+ - name: eth1
+ - name: eth2
+ state: absent
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == false'
diff --git a/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/net_lldp_interface.yaml b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/net_lldp_interface.yaml
new file mode 100644
index 00000000..49cd8b00
--- /dev/null
+++ b/test/integration/targets/vyos_lldp_interface/vyos_lldp_interface/tests/cli/net_lldp_interface.yaml
@@ -0,0 +1,26 @@
+---
+- debug: msg="START vyos cli/net_lldp_interface.yaml on connection={{ ansible_connection }}"
+
+# Add minimal testcase to check args are passed correctly to
+# implementation module and module run is successful.
+
+- name: Make sure LLDP is not running - setup
+ vyos_config:
+ lines: delete service lldp
+
+- name: Create LLDP configuration using platform agnostic module
+ net_lldp_interface:
+ name: eth1
+ state: present
+ register: result
+
+- assert:
+ that:
+ - 'result.changed == true'
+ - '"set service lldp interface eth1" in result.commands'
+
+- name: Make sure LLDP is not running - teardown
+ vyos_config:
+ lines: delete service lldp
+
+- debug: msg="END vyos cli/net_lldp_interface.yaml on connection={{ ansible_connection }}"