--- - name: add a static route win_route: destination: "{{ destination_ip_address }}/32" gateway: "{{ default_gateway }}" metric: 1 state: present register: route - name: check if route successfully addedd win_shell: (Get-CimInstance win32_ip4PersistedrouteTable -Filter "Destination = '{{ destination_ip_address }}'").Caption register: route_added - name: test if route successfully addedd assert: that: - route|changed - route_added.stdout_lines[0] == "{{ destination_ip_address }}" - name: add a static route to test idempotency win_route: destination: "{{ destination_ip_address }}/32" gateway: "{{ default_gateway }}" metric: 1 state: present register: idempotent_route - name: test idempotency assert: that: - not idempotent_route|changed - idempotent_route.output == "Static route already exists" - name: remove route win_route: destination: "{{ destination_ip_address }}/32" state: absent register: route_removed - name: check route is removed win_shell: Get-CimInstance win32_ip4PersistedrouteTable -Filter "Destination = '{{ destination_ip_address }}'" register: check_route_removed - name: test route is removed assert: that: - route_removed|changed - check_route_removed.stdout == '' - name: remove static route to test idempotency win_route: destination: "{{ destination_ip_address }}/32" state: absent register: idempotent_route_removed - name: test idempotency assert: that: - not idempotent_route_removed|changed - idempotent_route_removed.output == "No route to remove" - name: add route to wrong ip address win_route: destination: "715.18.0.0/32" gateway: "{{ default_gateway }}" metric: 1 state: present ignore_errors: yes register: wrong_ip - name: test route to wrong ip address assert: that: - wrong_ip|failed