---
  - name: Setup test fixture
    copy:
      src: fixtures/ansible-xml-namespaced-beers.xml
      dest: /tmp/ansible-xml-namespaced-beers.xml


  - name: Set namespaced '/bus:business/rat:rating' to '11'
    xml:
      path: /tmp/ansible-xml-namespaced-beers.xml
      namespaces:
        bus: http://test.business
        ber: http://test.beers
        rat: http://test.rating
        attr: http://test.attribute
      xpath: /bus:business/rat:rating
      value: '11'
    register: set_element_first_run

  - name: Set namespaced '/bus:business/rat:rating' to '11' again
    xml:
      path: /tmp/ansible-xml-namespaced-beers.xml
      namespaces:
        bus: http://test.business
        ber: http://test.beers
        rat: http://test.rating
        attr: http://test.attribute
      xpath: /bus:business/rat:rating
      value: '11'
    register: set_element_second_run

  - name: Compare to expected result
    copy:
      src: results/test-set-namespaced-element-value.xml
      dest: /tmp/ansible-xml-namespaced-beers.xml
    check_mode: yes
    diff: yes
    register: comparison
    #command: diff -u {{ role_path }}/results/test-set-namespaced-element-value.xml /tmp/ansible-xml-namespaced-beers.xml

  - name: Test expected result
    assert:
      that:
      - set_element_first_run.changed == true
      - set_element_second_run.changed == false
      - comparison.changed == false  # identical