mirror of
https://github.com/valitydev/salt.git
synced 2024-11-07 08:58:59 +00:00
56 lines
1.7 KiB
Python
56 lines
1.7 KiB
Python
# -*- coding: utf-8 -*-
|
|
|
|
# Import python libs
|
|
from __future__ import absolute_import
|
|
|
|
# Import Salt Testing libs
|
|
from tests.support.case import ModuleCase
|
|
from tests.support.helpers import destructiveTest
|
|
|
|
# Import Salt libs
|
|
import salt.utils
|
|
|
|
|
|
@destructiveTest
|
|
class ServiceModuleTest(ModuleCase):
|
|
'''
|
|
Module testing the service module
|
|
'''
|
|
def setUp(self):
|
|
self.service_name = 'cron'
|
|
cmd_name = 'crontab'
|
|
os_family = self.run_function('grains.get', ['os_family'])
|
|
os_release = self.run_function('grains.get', ['osrelease'])
|
|
if os_family == 'RedHat':
|
|
self.service_name = 'crond'
|
|
elif os_family == 'Arch':
|
|
self.service_name = 'sshd'
|
|
cmd_name = 'systemctl'
|
|
elif os_family == 'MacOS':
|
|
self.service_name = 'org.ntp.ntpd'
|
|
if int(os_release.split('.')[1]) >= 13:
|
|
self.service_name = 'com.apple.AirPlayXPCHelper'
|
|
|
|
if salt.utils.which(cmd_name) is None:
|
|
self.skipTest('{0} is not installed'.format(cmd_name))
|
|
|
|
def test_service_status_running(self):
|
|
'''
|
|
test service.status execution module
|
|
when service is running
|
|
'''
|
|
start_service = self.run_function('service.start', [self.service_name])
|
|
|
|
check_service = self.run_function('service.status', [self.service_name])
|
|
self.assertTrue(check_service)
|
|
|
|
def test_service_status_dead(self):
|
|
'''
|
|
test service.status execution module
|
|
when service is dead
|
|
'''
|
|
stop_service = self.run_function('service.stop', [self.service_name])
|
|
|
|
check_service = self.run_function('service.status', [self.service_name])
|
|
self.assertFalse(check_service)
|