Skip to content

Commit

Permalink
Add some more integration tests for the task and playbook include mec…
Browse files Browse the repository at this point in the history
…hanism.
  • Loading branch information
mpdehaan committed Jul 26, 2014
1 parent 5bcb715 commit a1e4f82
Show file tree
Hide file tree
Showing 8 changed files with 120 additions and 1 deletion.
5 changes: 4 additions & 1 deletion test/integration/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ endif

VAULT_PASSWORD_FILE = vault-password

all: non_destructive destructive check_mode test_hash test_handlers test_group_by test_vault parsing
all: non_destructive destructive includes check_mode test_hash test_handlers test_group_by test_vault parsing

parsing:
ansible-playbook bad_parsing.yml -i $(INVENTORY) -e @$(VARS_FILE) $(CREDENTIALS_ARG) -vvv $(TEST_FLAGS) --tags common,scenario1; [ $$? -eq 3 ]
Expand All @@ -25,6 +25,9 @@ parsing:
ansible-playbook bad_parsing.yml -i $(INVENTORY) -e @$(VARS_FILE) $(CREDENTIALS_ARG) -vvv $(TEST_FLAGS) --tags common,scenario4; [ $$? -eq 3 ]
ansible-playbook good_parsing.yml -i $(INVENTORY) -e @$(VARS_FILE) $(CREDENTIALS_ARG) -v $(TEST_FLAGS)

includes:
ansible-playbook test_includes.yml -i $(INVENTORY) -e @$(VARS_FILE) $(CREDENTIALS_ARG) $(TEST_FLAGS)

unicode:
ansible-playbook unicode.yml -i $(INVENTORY) -e @$(VARS_FILE) -v $(TEST_FLAGS)

Expand Down
2 changes: 2 additions & 0 deletions test/integration/roles/test_includes/handlers/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- include: more_handlers.yml

14 changes: 14 additions & 0 deletions test/integration/roles/test_includes/handlers/more_handlers.yml
Original file line number Diff line number Diff line change
@@ -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"


10 changes: 10 additions & 0 deletions test/integration/roles/test_includes/tasks/included_task1.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
- set_fact:
ca: "{{ a }}"

- set_fact:
cb: "{{b}}"

- set_fact:
cc: "{{ c }}"


72 changes: 72 additions & 0 deletions test/integration/roles/test_includes/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# test code for the ping module
# (c) 2014, James Cammarata <[email protected]>

# 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'"

# now try long form includes
#
# FIXME: not sure if folks were using this, or if vars were top level, but seems like
# it should be a thing.
#
#- 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


Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- set_fact:
ca: 33000
cb: 33001
cc: 33002
1 change: 1 addition & 0 deletions test/integration/test_includes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- include: test_includes2.yml
13 changes: 13 additions & 0 deletions test/integration/test_includes2.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@

- hosts: testhost
gather_facts: True
roles:
- { role: test_includes, tags: test_includes }
tasks:
- include: roles/test_includes/tasks/not_a_role_task.yml
- assert:
that:
- "ca == 33000"
- "cb == 33001"
- "cc == 33002"

0 comments on commit a1e4f82

Please sign in to comment.