---
- include_tasks: reset_config.yml

- set_fact:
    config:
      - name: Ethernet1
        duplex: auto
        enabled: True
      - name: Ethernet2
        description: 'Configured by Ansible'
        duplex: auto
        enabled: False

- eos_facts:
    gather_network_resources: interfaces
  become: yes

- name: Replaces device configuration of listed interfaces with provided configuration
  eos_interfaces:
    config: "{{ config }}"
    state: replaced
  register: result
  become: yes

- assert:
    that:
      - "ansible_facts.network_resources.interfaces|symmetric_difference(result.before)|length == 0"

- eos_facts:
    gather_network_resources: interfaces
  become: yes

- assert:
    that:
      - "ansible_facts.network_resources.interfaces|symmetric_difference(result.after)|length == 0"

- assert:
    that:
      - "config|difference(ansible_facts.network_resources.interfaces)|length == 0"
