--- - name: Setup test fixture copy: src: '{{ role_path }}/fixtures/ansible-xml-beers.xml' dest: /tmp/ansible-xml-beers.xml - name: Add child element xml: path: /tmp/ansible-xml-beers.xml xpath: /business/beers add_children: - beer: name: Ansible Brew type: light # NOTE: This test may fail if lxml does not support predictable element attribute order # So we filter the failure out for these platforms (e.g. CentOS 6) # The module still works fine, we simply are not comparing as smart as we should. - name: Test expected result command: diff -u {{ role_path }}/results/test-add-children-with-attributes.xml /tmp/ansible-xml-beers.xml register: diff failed_when: diff.rc != 0 and lxml_predictable_attribute_order