---
- debug: msg="START connection={{ ansible_connection }} nxos_snmp_community sanity test"
- debug: msg="Using provider={{ connection.transport }}"
  when: ansible_connection == "local"

- name: Setup - Remove snmp_contact if configured
  nxos_snmp_contact: &remove
    contact: Test
    provider: "{{ connection }}"
    state: absent 

- block:

  - name: Configure snmp contact
    nxos_snmp_contact: &config
      contact: Testing
      provider: "{{ connection }}"
      state: present
    register: result

  - assert: &true
      that:
        - "result.changed == true"

  - name: Idempotence Check
    nxos_snmp_contact: *config
    register: result

  - assert: &false
      that:
        - "result.changed == false"

  - name: Change snmp contact
    nxos_snmp_contact: &config1
      contact: Test
      provider: "{{ connection }}"
      state: present
    register: result

  - assert: *true

  - name: Idempotence Check
    nxos_snmp_contact: *config1
    register: result

  - assert: *false

  - name: Remove snmp contact
    nxos_snmp_contact: *remove
    register: result

  - assert: *true

  - name: Idempotence Check
    nxos_snmp_contact: *remove
    register: result

  - assert: *false

  always:
  - name: Cleanup 
    nxos_snmp_contact: *remove

  - debug: msg="END connection={{ ansible_connection }} nxos_snmp_community sanity test"
