Skip to content

Commit 1343251

Browse files
committed
new test for 'import_tasks'
1 parent dd4bf59 commit 1343251

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed

test/TestImportTasks.py

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
import os
2+
import pytest
3+
import shutil
4+
import tempfile
5+
import textwrap
6+
7+
from ansiblelint.runner import Runner
8+
9+
LAYOUT = {
10+
'directories': [
11+
'tasks',
12+
'tasks/subtasks'
13+
],
14+
15+
'files': {
16+
'main.yml' : textwrap.dedent(
17+
"""\
18+
---
19+
- hosts: target
20+
gather_facts: false
21+
tasks:
22+
- name: from main import task 1
23+
import_tasks: tasks/task_1.yml
24+
"""
25+
),
26+
'tasks/task_1.yml': textwrap.dedent(
27+
"""\
28+
---
29+
- name: from task 1 import task 2
30+
import_tasks: tasks/task_2.yml
31+
"""
32+
),
33+
'tasks/task_2.yml': textwrap.dedent(
34+
"""\
35+
---
36+
- name: from task 2 import subtask 1
37+
import_tasks: tasks/subtasks/subtask_1.yml
38+
"""
39+
),
40+
'tasks/subtasks/subtask_1.yml': textwrap.dedent(
41+
"""\
42+
---
43+
- name: from subtask 1 import subtask 2
44+
import_tasks: tasks/subtasks/subtask_2.yml
45+
"""
46+
),
47+
'tasks/subtasks/subtask_2.yml': textwrap.dedent(
48+
"""\
49+
---
50+
- name: from subtask 2 do something
51+
debug:
52+
msg: |
53+
Something...
54+
"""
55+
),
56+
}
57+
}
58+
59+
@pytest.mark.xfail('Bug https://github.com/ansible-community/ansible-lint/issues/540')
60+
def test_import_tasks(default_rules_collection):
61+
62+
root_dir_path = tempfile.mkdtemp()
63+
64+
for directory in LAYOUT['directories']:
65+
os.makedirs(os.path.join(root_dir_path, directory), exist_ok=True)
66+
67+
for file_path, file_content in LAYOUT['files'].items():
68+
open(os.path.join(root_dir_path, file_path), 'w').write(file_content)
69+
70+
result = Runner(root_dir_path, rules=default_rules_collection).run()
71+
72+
shutil.rmtree(root_dir_path)
73+
74+
assert len(result) == 0

0 commit comments

Comments
 (0)