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
2.3 KiB
YAML
74 lines
2.3 KiB
YAML
---
|
|
# NOTE: Jinja2 templating eats trailing newlines
|
|
- name: Read from xmlstring (not using pretty_print)
|
|
xml:
|
|
xmlstring: "{{ lookup('file', '{{ role_path }}/fixtures/ansible-xml-beers.xml') }}"
|
|
xpath: .
|
|
register: xmlresponse
|
|
|
|
|
|
- name: Compare to expected result
|
|
copy:
|
|
content: "{{ xmlresponse.xmlstring }}\n"
|
|
dest: '{{ role_path }}/results/test-pretty-print-only.xml'
|
|
check_mode: yes
|
|
diff: yes
|
|
register: comparison
|
|
|
|
- name: Test expected result
|
|
assert:
|
|
that:
|
|
- xmlresponse.changed == false
|
|
- comparison.changed == false # identical
|
|
#command: diff -u {{ role_path }}/results/test-pretty-print-only.xml /tmp/ansible-xml-beers.xml
|
|
|
|
|
|
# NOTE: Jinja2 templating eats trailing newlines
|
|
- name: Read from xmlstring (using pretty_print)
|
|
xml:
|
|
xmlstring: "{{ lookup('file', '{{ role_path }}/fixtures/ansible-xml-beers.xml') }}"
|
|
pretty_print: yes
|
|
register: xmlresponse
|
|
|
|
- name: Compare to expected result
|
|
copy:
|
|
content: '{{ xmlresponse.xmlstring }}'
|
|
dest: '{{ role_path }}/results/test-pretty-print-only.xml'
|
|
check_mode: yes
|
|
diff: yes
|
|
register: comparison
|
|
|
|
# FIXME: This change is related to the newline added by pretty_print
|
|
- name: Test expected result
|
|
assert:
|
|
that:
|
|
- xmlresponse.changed == true
|
|
- comparison.changed == false # identical
|
|
#command: diff -u {{ role_path }}/results/test-pretty-print-only.xml /tmp/ansible-xml-beers.xml
|
|
|
|
|
|
# NOTE: Jinja2 templating eats trailing newlines
|
|
- name: Read from xmlstring
|
|
xml:
|
|
xmlstring: "{{ lookup('file', '{{ role_path }}/fixtures/ansible-xml-beers.xml') }}"
|
|
xpath: /business/beers
|
|
pretty_print: yes
|
|
add_children:
|
|
- beer: Old Rasputin
|
|
register: xmlresponse_modification
|
|
|
|
- name: Compare to expected result
|
|
copy:
|
|
content: '{{ xmlresponse_modification.xmlstring }}'
|
|
dest: '{{ role_path }}/results/test-pretty-print.xml'
|
|
check_mode: yes
|
|
diff: yes
|
|
register: comparison
|
|
|
|
# FIXME: This change is related to the newline added by pretty_print
|
|
- name: Test expected result
|
|
assert:
|
|
that:
|
|
- xmlresponse_modification.changed == true
|
|
- comparison.changed == false # identical
|
|
#command: diff -u {{ role_path }}/results/test-pretty-print.xml /tmp/ansible-xml-beers.xml
|