summaryrefslogtreecommitdiff
path: root/test/integration/targets/win_service
diff options
context:
space:
mode:
authorMatt Clay <matt@mystile.com>2016-10-13 10:03:19 -0700
committerJohn R Barker <john@johnrbarker.com>2016-10-13 18:03:19 +0100
commitc2ec86cb78f3c43bc5f2484d1888571e27225702 (patch)
tree43602995d1b5b009de1e1d4a7bc1a835f60204b7 /test/integration/targets/win_service
parent9182619fef4151d04d28b30b8a6f33e469560f5f (diff)
downloadansible-c2ec86cb78f3c43bc5f2484d1888571e27225702.tar.gz
Migrate Windows CI roles to test targets. (#18005)
Diffstat (limited to 'test/integration/targets/win_service')
-rw-r--r--test/integration/targets/win_service/defaults/main.yml5
-rw-r--r--test/integration/targets/win_service/tasks/main.yml196
2 files changed, 201 insertions, 0 deletions
diff --git a/test/integration/targets/win_service/defaults/main.yml b/test/integration/targets/win_service/defaults/main.yml
new file mode 100644
index 0000000000..1f38717aa4
--- /dev/null
+++ b/test/integration/targets/win_service/defaults/main.yml
@@ -0,0 +1,5 @@
+---
+
+# Service is commonly available and usually disabled/stopped by default.
+test_win_service_name: SSDPSRV
+test_win_service_display_name: "SSDP Discovery"
diff --git a/test/integration/targets/win_service/tasks/main.yml b/test/integration/targets/win_service/tasks/main.yml
new file mode 100644
index 0000000000..39562c4dcf
--- /dev/null
+++ b/test/integration/targets/win_service/tasks/main.yml
@@ -0,0 +1,196 @@
+# test code for the win_service module
+# (c) 2014, Chris Church <chris@ninemoreminutes.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/>.
+
+- name: test win_service module with short name
+ win_service: name="{{ test_win_service_name }}"
+ register: win_service_name
+
+- name: check win_service result with short name
+ assert:
+ that:
+ - "not win_service_name|changed"
+ - "win_service_name.name"
+ - "win_service_name.display_name"
+ - "win_service_name.start_mode"
+ - "win_service_name.state"
+
+- name: test win_service module with display name
+ win_service: name="{{ test_win_service_display_name }}"
+ register: win_service_display_name
+
+- name: check win_service result with display name
+ assert:
+ that:
+ - "not win_service_display_name|changed"
+ - "win_service_display_name.name"
+ - "win_service_display_name.display_name"
+ - "win_service_display_name.start_mode"
+ - "win_service_display_name.state"
+
+- name: test win_service module with invalid name
+ win_service: name="iamnotaservice"
+ ignore_errors: true
+ register: win_service_invalid
+
+- name: check win_service result with invalid_name
+ assert:
+ that:
+ - "win_service_invalid|failed"
+ - "win_service_invalid.msg"
+
+- name: make sure the service is stopped and disabled
+ win_service: name="{{ test_win_service_name }}" state=stopped start_mode=disabled
+ register: win_service_stopped_disabled
+
+- name: check result of disabling and stopping the service
+ assert:
+ that:
+ - "win_service_stopped_disabled.start_mode == 'disabled'"
+ - "win_service_stopped_disabled.state == 'stopped'"
+
+- name: try to start the disabled service
+ win_service: name="{{ test_win_service_name }}" state=started
+ register: win_service_start_disabled
+ ignore_errors: true
+
+- name: check that starting the disabled service fails
+ assert:
+ that:
+ - "win_service_start_disabled|failed"
+ - "win_service_start_disabled.msg"
+
+- name: enable the service for manual startup
+ win_service: name="{{ test_win_service_name }}" start_mode=manual
+ register: win_service_manual_start_mode
+
+- name: check that enabling the service succeeds for manual startup
+ assert:
+ that:
+ - "win_service_manual_start_mode|changed"
+ - "win_service_manual_start_mode.start_mode == 'manual'"
+ - "win_service_manual_start_mode.state == 'stopped'"
+
+- name: enable the service again for manual startup
+ win_service: name="{{ test_win_service_name }}" start_mode=manual
+ register: win_service_manual_start_mode_again
+
+- name: check that enabling the service succeeds for manual startup
+ assert:
+ that:
+ - "not win_service_manual_start_mode_again|changed"
+ - "win_service_manual_start_mode_again.start_mode == 'manual'"
+ - "win_service_manual_start_mode_again.state == 'stopped'"
+
+- name: try to start the manual service
+ win_service: name="{{ test_win_service_name }}" state=started
+ register: win_service_start_manual
+
+- name: check that starting the manual service succeeds
+ assert:
+ that:
+ - "win_service_start_manual|changed"
+ - "win_service_start_manual.start_mode == 'manual'"
+ - "win_service_start_manual.state == 'running'"
+
+- name: try to start the manual service again
+ win_service: name="{{ test_win_service_name }}" state=started
+ register: win_service_start_manual_again
+
+- name: check that starting the manual service again succeeds without changes
+ assert:
+ that:
+ - "not win_service_start_manual_again|changed"
+ - "win_service_start_manual_again.start_mode == 'manual'"
+ - "win_service_start_manual_again.state == 'running'"
+
+- name: enable the service for automatic startup
+ win_service: name="{{ test_win_service_name }}" start_mode=auto
+ register: win_service_auto_start_mode
+
+- name: check that enabling the service succeeds for automatic startup
+ assert:
+ that:
+ - "win_service_auto_start_mode|changed"
+ - "win_service_auto_start_mode.start_mode == 'auto'"
+ - "win_service_auto_start_mode.state == 'running'"
+
+- name: enable the service again for automatic startup
+ win_service: name="{{ test_win_service_name }}" start_mode=auto
+ register: win_service_auto_start_mode_again
+
+- name: check that enabling the service succeeds for automatic startup without changes
+ assert:
+ that:
+ - "not win_service_auto_start_mode_again|changed"
+ - "win_service_auto_start_mode_again.start_mode == 'auto'"
+ - "win_service_auto_start_mode_again.state == 'running'"
+
+- name: restart the service
+ win_service: name="{{ test_win_service_name }}" state=restarted
+ register: win_service_restart_auto
+
+- name: check that restarting the service succeeds with changes
+ assert:
+ that:
+ - "win_service_restart_auto|changed"
+ - "win_service_restart_auto.start_mode == 'auto'"
+ - "win_service_restart_auto.state == 'running'"
+
+- name: disable the service again
+ win_service: name="{{ test_win_service_name }}" start_mode=disabled
+ register: win_service_disabled_start_mode
+
+- name: check that disabling the service succeeds, service is still running
+ assert:
+ that:
+ - "win_service_disabled_start_mode|changed"
+ - "win_service_disabled_start_mode.start_mode == 'disabled'"
+ - "win_service_disabled_start_mode.state == 'running'"
+
+- name: disable the service again
+ win_service: name="{{ test_win_service_name }}" start_mode=disabled
+ register: win_service_disabled_start_mode_again
+
+- name: check that disabling the service succeeds again
+ assert:
+ that:
+ - "not win_service_disabled_start_mode_again|changed"
+ - "win_service_disabled_start_mode_again.start_mode == 'disabled'"
+ - "win_service_disabled_start_mode_again.state == 'running'"
+
+- name: stop the service
+ win_service: name="{{ test_win_service_name }}" state=stopped
+ register: win_service_stop_disabled
+
+- name: check that stopping the service succeeds with changes
+ assert:
+ that:
+ - "win_service_stop_disabled|changed"
+ - "win_service_stop_disabled.start_mode == 'disabled'"
+ - "win_service_stop_disabled.state == 'stopped'"
+
+- name: stop the service again
+ win_service: name="{{ test_win_service_name }}" state=stopped
+ register: win_service_stop_disabled_again
+
+- name: check that stopping the service again succeeds without changes
+ assert:
+ that:
+ - "not win_service_stop_disabled_again|changed"
+ - "win_service_stop_disabled_again.start_mode == 'disabled'"
+ - "win_service_stop_disabled_again.state == 'stopped'"