summaryrefslogtreecommitdiff
path: root/test/integration/targets/find
diff options
context:
space:
mode:
authorjctanner <tanner.jc@gmail.com>2017-05-10 09:19:11 -0400
committerGitHub <noreply@github.com>2017-05-10 09:19:11 -0400
commite9c2546ffeb30a8675740ca276a71b4718813b97 (patch)
tree52cd4b2e60e6fe5a30993e2591ce73bf6f14f585 /test/integration/targets/find
parenta5020a40e5e725d445d93c0641f3d0bccd7cda0a (diff)
downloadansible-e9c2546ffeb30a8675740ca276a71b4718813b97.tar.gz
Add integration test targets for core supported modules (#24217)
A preliminary set of test targets for "core" supported module that had no independent tests. These will also help us ensure python3 compatibility for those modules and prevent future regressions.
Diffstat (limited to 'test/integration/targets/find')
-rw-r--r--test/integration/targets/find/aliases1
-rw-r--r--test/integration/targets/find/meta/main.yml2
-rw-r--r--test/integration/targets/find/tasks/main.yml83
3 files changed, 86 insertions, 0 deletions
diff --git a/test/integration/targets/find/aliases b/test/integration/targets/find/aliases
new file mode 100644
index 0000000000..4485d76162
--- /dev/null
+++ b/test/integration/targets/find/aliases
@@ -0,0 +1 @@
+posix/ci/group1
diff --git a/test/integration/targets/find/meta/main.yml b/test/integration/targets/find/meta/main.yml
new file mode 100644
index 0000000000..07faa21776
--- /dev/null
+++ b/test/integration/targets/find/meta/main.yml
@@ -0,0 +1,2 @@
+dependencies:
+ - prepare_tests
diff --git a/test/integration/targets/find/tasks/main.yml b/test/integration/targets/find/tasks/main.yml
new file mode 100644
index 0000000000..94e2090a5b
--- /dev/null
+++ b/test/integration/targets/find/tasks/main.yml
@@ -0,0 +1,83 @@
+# Test code for the find module.
+# (c) 2017, James Tanner <tanner.jc@gmail.com>
+
+# 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 <http://www.gnu.org/licenses/>.
+
+- set_fact: output_dir_test={{output_dir}}/test_find
+
+- name: make sure our testing sub-directory does not exist
+ file: path="{{ output_dir_test }}" state=absent
+
+- name: create our testing sub-directory
+ file: path="{{ output_dir_test }}" state=directory
+
+##
+## find
+##
+
+- name: make some directories
+ file:
+ path: "{{ output_dir_test }}/{{ item }}"
+ state: directory
+ with_items:
+ - a/b/c/d
+ - e/f/g/h
+
+- name: make some files
+ copy:
+ dest: "{{ output_dir_test }}/{{ item }}"
+ content: 'data'
+ with_items:
+ - a/1.txt
+ - a/b/2.jpg
+ - a/b/c/3
+ - a/b/c/d/4.xml
+ - e/5.json
+ - e/f/6.swp
+ - e/f/g/7.img
+ - e/f/g/h/8.ogg
+
+- name: find the directories
+ find:
+ paths: "{{ output_dir_test }}"
+ file_type: directory
+ recurse: yes
+ register: find_test0
+- debug: var=find_test0
+- name: validate directory results
+ assert:
+ that:
+ - 'find_test0.changed is defined'
+ - 'find_test0.examined is defined'
+ - 'find_test0.files is defined'
+ - 'find_test0.matched is defined'
+ - 'find_test0.msg is defined'
+ - 'find_test0.matched == 8'
+ - 'find_test0.files | length == 8'
+
+- name: find the xml and img files
+ find:
+ paths: "{{ output_dir_test }}"
+ file_type: file
+ patterns: "*.xml,*.img"
+ recurse: yes
+ register: find_test1
+- debug: var=find_test1
+- name: validate directory results
+ assert:
+ that:
+ - 'find_test1.matched == 2'
+ - 'find_test1.files | length == 2'