From e4a80965deb6c2cc514eea9dc111b13f797de1ee Mon Sep 17 00:00:00 2001 From: Toshio Kuratomi Date: Wed, 15 Feb 2017 08:33:29 -0800 Subject: [PATCH] Test the slurp module --- test/integration/targets/slurp/aliases | 1 + test/integration/targets/slurp/files/bar.bin | Bin 0 -> 256 bytes test/integration/targets/slurp/tasks/main.yml | 98 ++++++++++++++++++ 3 files changed, 99 insertions(+) create mode 100644 test/integration/targets/slurp/aliases create mode 100644 test/integration/targets/slurp/files/bar.bin create mode 100644 test/integration/targets/slurp/tasks/main.yml diff --git a/test/integration/targets/slurp/aliases b/test/integration/targets/slurp/aliases new file mode 100644 index 00000000000..4485d761629 --- /dev/null +++ b/test/integration/targets/slurp/aliases @@ -0,0 +1 @@ +posix/ci/group1 diff --git a/test/integration/targets/slurp/files/bar.bin b/test/integration/targets/slurp/files/bar.bin new file mode 100644 index 0000000000000000000000000000000000000000..38d4d8a4f212b1686be6ca90ae0247bca737f241 GIT binary patch literal 256 zcmV+b0ssC00RjUA1qKHQ2?`4g4Gs?w5fT#=6&4p585$cL9UdPbAtECrB_<~*DJm;0 zEiNxGF)}kWH8wXmIXXK$Jw87`K|(`BMMg(RNlHshO-@fxQBqS>RaRG6Sz23MU0z>c zVPa!sWoBn+X=-b1ZEkOHadLBXb#`}nd3t+%eSUv{fr5jCg@%WSiHeJijgF6yk&=^? zm6n&7nVOrNot~edp`xRtrKYE-sj922t*)=Iv9hzYwYImoxw^Z&y}rM|!NSAD#m2|T z$;!*j&Cbuz(bCh@)z;V8+1lIO-QM5e;o{@u<>u$;>FVq3?e6dJ@$&QZ_4fDp`TG0( G{r(EA0e*}C literal 0 HcmV?d00001 diff --git a/test/integration/targets/slurp/tasks/main.yml b/test/integration/targets/slurp/tasks/main.yml new file mode 100644 index 00000000000..5dfb3c239c3 --- /dev/null +++ b/test/integration/targets/slurp/tasks/main.yml @@ -0,0 +1,98 @@ +# test code for the slurp module. Based on win_slurp test cases +# (c) 2014, Chris Church + +# This file is part of Ansible +# +# Ansible is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Ansible is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Ansible. If not, see . + +- name: Create a UTF-8 file to test with + copy: + content: 'We are at the café' + dest: '{{ output_dir }}/foo.txt' + +- name: test slurping an existing file + slurp: + src: '{{ output_dir }}/foo.txt' + register: slurp_existing + +- name: check slurp existing result + assert: + that: + - 'slurp_existing.content' + - 'slurp_existing.encoding == "base64"' + - 'not slurp_existing|changed' + - 'not slurp_existing|failed' + - '"{{ slurp_existing.content | b64decode }}" == "We are at the café"' + +- name: Create a binary file to test with + copy: + src: bar.bin + dest: '{{ output_dir }}/bar.bin' + +- name: test slurping a binary file + slurp: + path: '{{ output_dir }}/bar.bin' + register: slurp_binary + no_log: true + +- name: check slurp result of binary + assert: + that: + - "slurp_binary.content" + - "slurp_binary.encoding == 'base64'" + - "not slurp_binary|changed" + - "not slurp_binary|failed" + +- name: test slurping a non-existent file + slurp: + src: '{{ output_dir }}/i_do_not_exist' + register: slurp_missing + ignore_errors: true + +- name: check slurp missing result + assert: + that: + - "slurp_missing|failed" + - "slurp_missing.msg" + - "not slurp_missing|changed" + +- name: Create a directory to test with + file: + path: '{{ output_dir }}/baz/' + state: directory + +- name: test slurping a directory + slurp: + src: '{{ output_dir }}/baz' + register: slurp_dir + ignore_errors: true + +- name: check slurp directory result + assert: + that: + - "slurp_dir|failed" + - "slurp_dir.msg" + - "not slurp_dir|changed" + +- name: test slurp with missing argument + action: slurp + register: slurp_no_args + ignore_errors: true + +- name: check slurp with missing argument result + assert: + that: + - "slurp_no_args|failed" + - "slurp_no_args.msg" + - "not slurp_no_args|changed"