summaryrefslogtreecommitdiff
path: root/test/integration/targets/blockinfile
diff options
context:
space:
mode:
authorSam Doran <sdoran@redhat.com>2020-05-27 16:54:38 -0400
committerGitHub <noreply@github.com>2020-05-27 16:54:38 -0400
commitd7618712fd13804de07dacf06c64e7ac34c395fc (patch)
tree96d7fb2ae3b7d2f02dc2ccc771018f46e3164d9a /test/integration/targets/blockinfile
parent65c57a7f5bb82f50fb2a14b5cbd973dd4124414e (diff)
downloadansible-d7618712fd13804de07dacf06c64e7ac34c395fc.tar.gz
blockinfile - fix line end regression (#69734)
PR #66461 introduced a regression that resulted in an in correct block in the file if the block to be inserted did not end with a line separator. Fix this bug and add tests to cover this scenario.
Diffstat (limited to 'test/integration/targets/blockinfile')
-rw-r--r--test/integration/targets/blockinfile/tasks/main.yml32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/integration/targets/blockinfile/tasks/main.yml b/test/integration/targets/blockinfile/tasks/main.yml
index 5accf5b587..ffcfd18d3e 100644
--- a/test/integration/targets/blockinfile/tasks/main.yml
+++ b/test/integration/targets/blockinfile/tasks/main.yml
@@ -137,3 +137,35 @@
- 'blockinfile_test2 is changed'
- 'blockinfile_test2.msg == "Block inserted"'
- 'blockinfile_test2_grep.stdout == "6"'
+
+
+- name: Add block without trailing line separator
+ blockinfile:
+ path: "{{ output_dir_test }}/chomped_block_test.txt"
+ create: yes
+ content: |-
+ one
+ two
+ three
+ register: chomptest1
+
+- name: Add block without trailing line separator again
+ blockinfile:
+ path: "{{ output_dir_test }}/chomped_block_test.txt"
+ content: |-
+ one
+ two
+ three
+ register: chomptest2
+
+- name: Check output file
+ stat:
+ path: "{{ output_dir_test }}/chomped_block_test.txt"
+ register: chomptest_file
+
+- name: Ensure chomptest results are correct
+ assert:
+ that:
+ - chomptest1 is changed
+ - chomptest2 is not changed
+ - chomptest_file.stat.checksum == '50d49f528a5f7147c7029ed6220c326b1ee2c4ae'