mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
2634ef955a
This PR includes: - Improvements to change-detection by comparing 2 objectified XML trees - Implement better integration tests by comparing 2 files using copy
74 lines
1.9 KiB
YAML
74 lines
1.9 KiB
YAML
---
|
|
- name: Setup test fixture
|
|
copy:
|
|
src: fixtures/ansible-xml-beers.xml
|
|
dest: /tmp/ansible-xml-beers.xml
|
|
|
|
|
|
- name: Set child elements
|
|
xml:
|
|
path: /tmp/ansible-xml-beers.xml
|
|
xpath: /business/beers
|
|
set_children: &children
|
|
- beer:
|
|
name: 90 Minute IPA
|
|
alcohol: "0.5"
|
|
_:
|
|
- Water:
|
|
quantity: 200g
|
|
liter: "0.2"
|
|
- Starch:
|
|
quantity: 10g
|
|
- Hops:
|
|
quantity: 50g
|
|
- Yeast:
|
|
quantity: 20g
|
|
- beer:
|
|
name: Harvest Pumpkin Ale
|
|
alcohol: "0.3"
|
|
_:
|
|
- Water:
|
|
quantity: 200g
|
|
liter: "0.2"
|
|
- Hops:
|
|
quantity: 25g
|
|
- Yeast:
|
|
quantity: 20g
|
|
register: set_children_elements_level
|
|
|
|
- name: Compare to expected result
|
|
copy:
|
|
src: results/test-set-children-elements-level.xml
|
|
dest: /tmp/ansible-xml-beers.xml
|
|
check_mode: yes
|
|
diff: yes
|
|
register: comparison
|
|
|
|
- name: Test expected result
|
|
assert:
|
|
that:
|
|
- set_children_elements_level.changed == true
|
|
- comparison.changed == false # identical
|
|
#command: diff -u {{ role_path }}/results/test-set-children-elements-level.xml /tmp/ansible-xml-beers.xml
|
|
|
|
|
|
- name: Set child elements (again)
|
|
xml:
|
|
path: /tmp/ansible-xml-beers.xml
|
|
xpath: /business/beers
|
|
set_children: *children
|
|
register: set_children_again
|
|
|
|
- name: Compare to expected result
|
|
copy:
|
|
src: results/test-set-children-elements-level.xml
|
|
dest: /tmp/ansible-xml-beers.xml
|
|
check_mode: yes
|
|
diff: yes
|
|
register: comparison
|
|
|
|
- name: Test expected result
|
|
assert:
|
|
that:
|
|
- set_children_again.changed == false
|
|
- comparison.changed == false # identical
|