---
- debug: msg="START cli/not_hardware_facts.yaml on connection={{ ansible_connection }}"


- name: test not hardware
  ios_facts:
    gather_subset:
      - "!hardware"
    provider: "{{ cli }}"
  register: result

- assert:
    that:
      # _facts modules should never report a change
      - "result.changed == false"

      # Correct subsets are present
      - "'config' in result.ansible_facts.ansible_net_gather_subset"

      - "'default' in result.ansible_facts.ansible_net_gather_subset"
      - "'interfaces' in result.ansible_facts.ansible_net_gather_subset"
      # ... and not present
      - "'hardware' not in result.ansible_facts.ansible_net_gather_subset"

      # Items from those subsets are present
      - "result.ansible_facts.ansible_net_interfaces | length > 1" # more than one interface returned
      # ... and not present
      - "result.ansible_facts.ansible_net_filesystems is not defined"
      - "result.ansible_facts.ansible_net_filesystems_info is not defined"

- debug: msg="END cli/not_hardware_facts.yaml on connection={{ ansible_connection }}"
