Skip to content

Commit a4ee5ea

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

File tree

1 file changed

+73
-0
lines changed

1 file changed

+73
-0
lines changed

test/TestImportTasks.py

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

0 commit comments

Comments
 (0)