summaryrefslogtreecommitdiff
path: root/test/integration/targets/includes
diff options
context:
space:
mode:
authorMatt Clay <matt@mystile.com>2016-10-12 14:57:53 -0700
committerGitHub <noreply@github.com>2016-10-12 14:57:53 -0700
commit80a5c70ad795f3cd1e6e3edde7077a8dfd65470b (patch)
tree50ab0ad670d2631fa32cad47019d9a970ed81596 /test/integration/targets/includes
parentbf3d546d9a48cf5391a91002733d4a6ea62b1a0c (diff)
downloadansible-80a5c70ad795f3cd1e6e3edde7077a8dfd65470b.tar.gz
Split integration tests out from Makefile. (#17976)
Diffstat (limited to 'test/integration/targets/includes')
-rw-r--r--test/integration/targets/includes/roles/test_includes/handlers/main.yml2
-rw-r--r--test/integration/targets/includes/roles/test_includes/handlers/more_handlers.yml14
-rw-r--r--test/integration/targets/includes/roles/test_includes/tasks/empty.yml0
-rw-r--r--test/integration/targets/includes/roles/test_includes/tasks/included_task1.yml10
-rw-r--r--test/integration/targets/includes/roles/test_includes/tasks/main.yml84
-rw-r--r--test/integration/targets/includes/roles/test_includes/tasks/not_a_role_task.yml4
-rwxr-xr-xtest/integration/targets/includes/runme.sh5
-rw-r--r--test/integration/targets/includes/test_includes.yml3
-rw-r--r--test/integration/targets/includes/test_includes2.yml22
-rw-r--r--test/integration/targets/includes/test_includes3.yml7
-rw-r--r--test/integration/targets/includes/test_includes4.yml2
11 files changed, 153 insertions, 0 deletions
diff --git a/test/integration/targets/includes/roles/test_includes/handlers/main.yml b/test/integration/targets/includes/roles/test_includes/handlers/main.yml
new file mode 100644
index 0000000000..25e7d3886f
--- /dev/null
+++ b/test/integration/targets/includes/roles/test_includes/handlers/main.yml
@@ -0,0 +1,2 @@
+- include: more_handlers.yml
+
diff --git a/test/integration/targets/includes/roles/test_includes/handlers/more_handlers.yml b/test/integration/targets/includes/roles/test_includes/handlers/more_handlers.yml
new file mode 100644
index 0000000000..947ede8d91
--- /dev/null
+++ b/test/integration/targets/includes/roles/test_includes/handlers/more_handlers.yml
@@ -0,0 +1,14 @@
+- name: included_handler
+ set_fact:
+ ca: 4001
+ cb: 4002
+ cc: 4003
+
+- name: verify_handler
+ assert:
+ that:
+ - "ca == 4001"
+ - "cb == 4002"
+ - "cc == 4003"
+
+
diff --git a/test/integration/targets/includes/roles/test_includes/tasks/empty.yml b/test/integration/targets/includes/roles/test_includes/tasks/empty.yml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/test/integration/targets/includes/roles/test_includes/tasks/empty.yml
diff --git a/test/integration/targets/includes/roles/test_includes/tasks/included_task1.yml b/test/integration/targets/includes/roles/test_includes/tasks/included_task1.yml
new file mode 100644
index 0000000000..8fe79a1cb7
--- /dev/null
+++ b/test/integration/targets/includes/roles/test_includes/tasks/included_task1.yml
@@ -0,0 +1,10 @@
+- set_fact:
+ ca: "{{ a }}"
+- debug: var=ca
+- set_fact:
+ cb: "{{b}}"
+- debug: var=cb
+- set_fact:
+ cc: "{{ c }}"
+- debug: var=cc
+
diff --git a/test/integration/targets/includes/roles/test_includes/tasks/main.yml b/test/integration/targets/includes/roles/test_includes/tasks/main.yml
new file mode 100644
index 0000000000..33aefe8959
--- /dev/null
+++ b/test/integration/targets/includes/roles/test_includes/tasks/main.yml
@@ -0,0 +1,84 @@
+# test code for the ping module
+# (c) 2014, James Cammarata <jcammarata@ansible.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/>.
+
+
+- include: included_task1.yml a=1 b=2 c=3
+
+- name: verify non-variable include params
+ assert:
+ that:
+ - "ca == '1'"
+ - "cb == '2'"
+ - "cc == '3'"
+
+- set_fact:
+ a: 101
+ b: 102
+ c: 103
+
+- include: included_task1.yml a={{a}} b={{b}} c=103
+
+- name: verify variable include params
+ assert:
+ that:
+ - "ca == 101"
+ - "cb == 102"
+ - "cc == 103"
+
+# Test that strings are not turned into numbers
+- set_fact:
+ a: "101"
+ b: "102"
+ c: "103"
+
+- include: included_task1.yml a={{a}} b={{b}} c=103
+
+- name: verify variable include params
+ assert:
+ that:
+ - "ca == '101'"
+ - "cb == '102'"
+ - "cc == '103'"
+
+# now try long form includes
+
+- include: included_task1.yml
+ vars:
+ a: 201
+ b: 202
+ c: 203
+
+- debug: var=a
+- debug: var=b
+- debug: var=c
+
+- name: verify long-form include params
+ assert:
+ that:
+ - "ca == 201"
+ - "cb == 202"
+ - "cc == 203"
+
+- name: test handlers with includes
+ shell: echo 1
+ notify:
+ # both these via a handler include
+ - included_handler
+ - verify_handler
+
+
diff --git a/test/integration/targets/includes/roles/test_includes/tasks/not_a_role_task.yml b/test/integration/targets/includes/roles/test_includes/tasks/not_a_role_task.yml
new file mode 100644
index 0000000000..862b051ce5
--- /dev/null
+++ b/test/integration/targets/includes/roles/test_includes/tasks/not_a_role_task.yml
@@ -0,0 +1,4 @@
+- set_fact:
+ ca: 33000
+ cb: 33001
+ cc: 33002
diff --git a/test/integration/targets/includes/runme.sh b/test/integration/targets/includes/runme.sh
new file mode 100755
index 0000000000..dff40029b1
--- /dev/null
+++ b/test/integration/targets/includes/runme.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+
+set -eux
+
+ansible-playbook test_includes.yml -i ../../inventory "$@"
diff --git a/test/integration/targets/includes/test_includes.yml b/test/integration/targets/includes/test_includes.yml
new file mode 100644
index 0000000000..d7303880f1
--- /dev/null
+++ b/test/integration/targets/includes/test_includes.yml
@@ -0,0 +1,3 @@
+- include: test_includes2.yml parameter1=asdf parameter2=jkl
+
+- include: test_includes3.yml
diff --git a/test/integration/targets/includes/test_includes2.yml b/test/integration/targets/includes/test_includes2.yml
new file mode 100644
index 0000000000..1b15682d70
--- /dev/null
+++ b/test/integration/targets/includes/test_includes2.yml
@@ -0,0 +1,22 @@
+
+- name: verify playbook includes can take parameters
+ hosts: testhost
+ tasks:
+ - assert:
+ that:
+ - "parameter1 == 'asdf'"
+ - "parameter2 == 'jkl'"
+
+- name: verify task include logic
+ hosts: testhost
+ gather_facts: True
+ roles:
+ - { role: test_includes, tags: test_includes }
+ tasks:
+ - include: roles/test_includes/tasks/not_a_role_task.yml
+ - include: roles/test_includes/tasks/empty.yml
+ - assert:
+ that:
+ - "ca == 33000"
+ - "cb == 33001"
+ - "cc == 33002"
diff --git a/test/integration/targets/includes/test_includes3.yml b/test/integration/targets/includes/test_includes3.yml
new file mode 100644
index 0000000000..012ee20568
--- /dev/null
+++ b/test/integration/targets/includes/test_includes3.yml
@@ -0,0 +1,7 @@
+---
+- hosts: localhost
+ tasks:
+ - include: test_includes4.yml
+ with_items: ["a"]
+ loop_control:
+ loop_var: r
diff --git a/test/integration/targets/includes/test_includes4.yml b/test/integration/targets/includes/test_includes4.yml
new file mode 100644
index 0000000000..bee906bdfb
--- /dev/null
+++ b/test/integration/targets/includes/test_includes4.yml
@@ -0,0 +1,2 @@
+- set_fact:
+ p: 1