ansible/test/integration/targets/win_scheduled_task/tasks/tests.yml
Andrew Saraceni 91e995d691 Allow win_scheduled_task to support adding and removing task paths (#24025)
* allows win_scheduled_task to support adding and removing task paths

* fix line length for documentation

* added integration tests for path creation and removal

* removing ability to remove TaskPath if a task isn't removed.  also removed superfluous line of code in Invoke-TaskPathCheck function
2017-06-14 08:02:36 +01:00

213 lines
5.6 KiB
YAML

- name: Remove potentially leftover scheduled task
win_scheduled_task: &wst_absent
name: Ansible Test
state: absent
- name: Add scheduled task
win_scheduled_task: &wst_present
name: Ansible Test
executable: dir.exe
arguments: C:\Windows\Temp\
frequency: once
time: 5pm
user: SYSTEM
register: add_scheduled_task
- name: Test add_scheduled_task
assert:
that:
- add_scheduled_task.changed == true
- add_scheduled_task.exists == false
- name: Add scheduled task (again)
win_scheduled_task: *wst_present
register: add_scheduled_task_again
- name: Test add_scheduled_task_again (normal mode)
assert:
that:
- add_scheduled_task_again.changed == false
- add_scheduled_task_again.exists == true
when: not in_check_mode
- name: Test add_scheduled_task_again (check-mode)
assert:
that:
- add_scheduled_task_again.changed == true
- add_scheduled_task_again.exists == false
when: in_check_mode
# FIXME: The below tasks should not require all options
# See: https://github.com/ansible/ansible/issues/19279
- name: Run tests for normal mode only (expects scheduled task)
when: not in_check_mode
block:
- name: Disable scheduled task
win_scheduled_task:
<<: *wst_present
enabled: no
register: disable_scheduled_task
- name: Test disable_scheduled_task
assert:
that:
- disable_scheduled_task.changed == true
- disable_scheduled_task.exists == true
- name: Disable scheduled task (again)
win_scheduled_task:
<<: *wst_present
enabled: no
register: disable_scheduled_task_again
- name: Test disable_scheduled_task_again
assert:
that:
- disable_scheduled_task_again.changed == false
- disable_scheduled_task_again.exists == true
- name: Enable scheduled task
win_scheduled_task:
<<: *wst_present
enabled: yes
register: enable_scheduled_task
- assert:
that:
- enable_scheduled_task.changed == true
- enable_scheduled_task.exists == true
- name: Enable scheduled task (again)
win_scheduled_task:
<<: *wst_present
enabled: yes
register: enable_scheduled_task_again
- assert:
that:
- enable_scheduled_task_again.changed == false
- enable_scheduled_task_again.exists == true
- name: Remove scheduled task
win_scheduled_task: *wst_absent
register: remove_scheduled_task
- name: Test remove_scheduled_task (normal mode)
assert:
that:
- remove_scheduled_task.changed == true
- remove_scheduled_task.exists == true
when: not in_check_mode
- name: Test remove_scheduled_task (check-mode)
assert:
that:
- remove_scheduled_task.changed == false
- remove_scheduled_task.exists == false
when: in_check_mode
- name: Remove scheduled task (again)
win_scheduled_task: *wst_absent
register: remove_scheduled_task_again
- name: Test remove_scheduled_task_again
assert:
that:
- remove_scheduled_task_again.changed == false
- remove_scheduled_task_again.exists == false
# Test scheduled task path creation and removal
- name: Remove potentially leftover new path task 1
win_scheduled_task: &wstp1_absent
name: Ansible Test New Path 1
path: \non_existent_path\
state: absent
- name: Remove potentially leftover new path task 2
win_scheduled_task: &wstp2_absent
name: Ansible Test New Path 2
path: \non_existent_path\
state: absent
- name: Add scheduled task new path 1
win_scheduled_task: &wstp1_present
name: Ansible Test New Path 1
description: A test of functionality
executable: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
arguments: -ExecutionPolicy Unrestricted -NonInteractive -File C:\TestDir\Test.ps1
time: "9:45pm"
path: \non_existent_path\
frequency: once
state: present
enabled: yes
user: SYSTEM
register: add_scheduled_task_new_path_1
- name: Test add_scheduled_task_new_path_1
assert:
that:
- add_scheduled_task_new_path_1.msg == 'Added new task Ansible Test New Path 1 and task path \\non_existent_path\\ created'
- name: Add scheduled task new path 2
win_scheduled_task: &wstp2_present
<<: *wstp1_present
name: Ansible Test New Path 2
register: add_scheduled_task_new_path_2
- name: Test add_scheduled_task_new_path_2 (normal mode)
assert:
that:
- add_scheduled_task_new_path_2.msg == 'Added new task Ansible Test New Path 2'
when: not in_check_mode
- name: Test add_scheduled_task_new_path_2 (check-mode)
assert:
that:
- add_scheduled_task_new_path_2.msg == 'Added new task Ansible Test New Path 2 and task path \\non_existent_path\\ created'
when: in_check_mode
- name: Remove scheduled task new path 2
win_scheduled_task: *wstp2_absent
register: remove_scheduled_task_new_path_2
- name: Test remove_scheduled_task_new_path_2 (normal mode)
assert:
that:
- remove_scheduled_task_new_path_2.msg == 'Deleted task Ansible Test New Path 2'
when: not in_check_mode
- name: Test remove_scheduled_task_new_path_2 (check-mode)
assert:
that:
- remove_scheduled_task_new_path_2.msg == 'Task does not exist'
when: in_check_mode
- name: Remove scheduled task new path 1
win_scheduled_task: *wstp1_absent
register: remove_scheduled_task_new_path_1
- name: Test remove_scheduled_task_new_path_1 (normal mode)
assert:
that:
- remove_scheduled_task_new_path_1.msg == 'Deleted task Ansible Test New Path 1 and task path \\non_existent_path\\ removed'
when: not in_check_mode
- name: Test remove_scheduled_task_new_path_1 (check-mode)
assert:
that:
- remove_scheduled_task_new_path_1.msg == 'Task does not exist'
when: in_check_mode