ansible/test/integration/targets/ios_interfaces/tests/cli/replaced.yaml
2019-08-02 14:34:05 +05:30

47 lines
1.5 KiB
YAML

---
- debug:
msg: "START Replaced ios_interfaces state for integration tests on connection={{ ansible_connection }}"
- include_tasks: _remove_config.yaml
- include_tasks: _populate_config.yaml
- block:
- name: Replaces device configuration of listed interfaces with provided configuration
ios_interfaces: &replaced
config:
- name: GigabitEthernet0/1
description: 'Configured and Replaced by Ansible-Network'
mtu: 110
- name: GigabitEthernet0/2
description: 'Configured and Replaced by Ansible-Network'
speed: 10
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:
- "{{ replaced['before'] | 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: Replaces device configuration of listed interfaces with provided configuration (IDEMPOTENT)
ios_interfaces: *replaced
register: result
- name: Assert that task was idempotent
assert:
that:
- "result['changed'] == false"
always:
- include_tasks: _remove_config.yaml