--- - name: Setup test fixture copy: src: fixtures/ansible-xml-beers.xml dest: /tmp/ansible-xml-beers.xml - name: Add 2nd '/business/rating' with value '5' xml: path: /tmp/ansible-xml-beers.xml xpath: /business add_children: - rating: '5' - name: Set '/business/rating' to '5' xml: path: /tmp/ansible-xml-beers.xml xpath: /business/rating value: '5' register: set_element_first_run - name: Set '/business/rating' to '5'... again xml: path: /tmp/ansible-xml-beers.xml xpath: /business/rating value: '5' register: set_element_second_run - name: Compare to expected result copy: src: results/test-set-element-value.xml dest: /tmp/ansible-xml-beers.xml check_mode: yes diff: yes register: comparison - name: Test expected result assert: that: - set_element_first_run.changed == true - set_element_second_run.changed == false - comparison.changed == false # identical #command: diff -u {{ role_path }}/results/test-set-element-value.xml /tmp/ansible-xml-beers.xml