summaryrefslogtreecommitdiff
path: root/test/integration/targets/vyos_l3_interfaces/tests/cli/replaced.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'test/integration/targets/vyos_l3_interfaces/tests/cli/replaced.yaml')
-rw-r--r--test/integration/targets/vyos_l3_interfaces/tests/cli/replaced.yaml52
1 files changed, 52 insertions, 0 deletions
diff --git a/test/integration/targets/vyos_l3_interfaces/tests/cli/replaced.yaml b/test/integration/targets/vyos_l3_interfaces/tests/cli/replaced.yaml
new file mode 100644
index 0000000..4d44983
--- /dev/null
+++ b/test/integration/targets/vyos_l3_interfaces/tests/cli/replaced.yaml
@@ -0,0 +1,52 @@
+---
+- debug:
+ msg: "START vyos_l3_interfaces replaced integration tests on connection={{ ansible_connection }}"
+
+- include_tasks: _remove_config.yaml
+
+- block:
+ - include_tasks: _populate.yaml
+
+ - name: Replace device configurations of listed interfaces with provided configurations
+ vyos.vyos.vyos_l3_interfaces: &replaced
+ config:
+ - name: eth1
+ ipv4:
+ - address: 192.0.2.19/24
+ - name: eth2
+ ipv6:
+ - address: 2001:db8::11/32
+ state: replaced
+ register: result
+
+ - name: Assert that correct set of commands were generated
+ assert:
+ that:
+ - "{{ replaced['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+
+ - name: Assert that before dicts are correctly generated
+ assert:
+ that:
+ - "{{ populate | symmetric_difference(result['before']) |length == 0 }}"
+
+ - name: Assert that after dict is correctly generated
+ assert:
+ that:
+ - "{{ replaced['after'] | symmetric_difference(result['after']) |length == 0 }}"
+
+ - name: Replace device configurations of listed interfaces with provided configurarions (IDEMPOTENT)
+ vyos.vyos.vyos_l3_interfaces: *replaced
+ register: result
+
+ - name: Assert that task was idempotent
+ assert:
+ that:
+ - "result['changed'] == false"
+
+ - name: Assert that before dict is correctly generated
+ assert:
+ that:
+ - "{{ replaced['after'] | symmetric_difference(result['before']) |length == 0 }}"
+
+ always:
+ - include_tasks: _remove_config.yaml