mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
adding states/supervisord unit test case.
This commit is contained in:
parent
a791b23ff9
commit
bb0a6d5625
1 changed files with 102 additions and 0 deletions
102
tests/unit/states/supervisord_test.py
Normal file
102
tests/unit/states/supervisord_test.py
Normal file
|
@ -0,0 +1,102 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
'''
|
||||
:codeauthor: :email:`Jayesh Kariya <jayeshk@saltstack.com>`
|
||||
'''
|
||||
# Import Python libs
|
||||
from __future__ import absolute_import
|
||||
|
||||
# Import Salt Testing Libs
|
||||
from salttesting import skipIf, TestCase
|
||||
from salttesting.mock import (
|
||||
NO_MOCK,
|
||||
NO_MOCK_REASON,
|
||||
MagicMock,
|
||||
patch
|
||||
)
|
||||
|
||||
from salttesting.helpers import ensure_in_syspath
|
||||
|
||||
ensure_in_syspath('../../')
|
||||
|
||||
# Import Salt Libs
|
||||
from salt.states import supervisord
|
||||
|
||||
supervisord.__salt__ = {}
|
||||
supervisord.__opts__ = {}
|
||||
|
||||
|
||||
@skipIf(NO_MOCK, NO_MOCK_REASON)
|
||||
class SupervisordTestCase(TestCase):
|
||||
'''
|
||||
Test cases for salt.states.supervisord
|
||||
'''
|
||||
# 'running' function tests: 1
|
||||
|
||||
def test_running(self):
|
||||
'''
|
||||
Test to ensure the named service is running.
|
||||
'''
|
||||
name = 'wsgi_server'
|
||||
|
||||
ret = {'name': name,
|
||||
'changes': {},
|
||||
'result': True,
|
||||
'comment': ''}
|
||||
|
||||
comt = ('Supervisord module not activated.'
|
||||
' Do you need to install supervisord?')
|
||||
ret.update({'comment': comt, 'result': False})
|
||||
self.assertDictEqual(supervisord.running(name), ret)
|
||||
|
||||
mock = MagicMock(return_value={name: {'state': 'running'}})
|
||||
with patch.dict(supervisord.__salt__, {'supervisord.status': mock}):
|
||||
with patch.dict(supervisord.__opts__, {'test': True}):
|
||||
comt = ('Service wsgi_server is already running')
|
||||
ret.update({'comment': comt, 'result': True})
|
||||
self.assertDictEqual(supervisord.running(name), ret)
|
||||
|
||||
with patch.dict(supervisord.__opts__, {'test': False}):
|
||||
comt = ('Not starting already running service: wsgi_server')
|
||||
ret.update({'comment': comt})
|
||||
self.assertDictEqual(supervisord.running(name), ret)
|
||||
|
||||
# 'dead' function tests: 1
|
||||
|
||||
def test_dead(self):
|
||||
'''
|
||||
Test to ensure the named service is dead (not running).
|
||||
'''
|
||||
name = 'wsgi_server'
|
||||
|
||||
ret = {'name': name,
|
||||
'changes': {},
|
||||
'result': None,
|
||||
'comment': ''}
|
||||
|
||||
with patch.dict(supervisord.__opts__, {'test': True}):
|
||||
comt = ('Service {0} is set to be stopped'.format(name))
|
||||
ret.update({'comment': comt})
|
||||
self.assertDictEqual(supervisord.dead(name), ret)
|
||||
|
||||
# 'mod_watch' function tests: 1
|
||||
|
||||
def test_mod_watch(self):
|
||||
'''
|
||||
Test to always restart on watch.
|
||||
'''
|
||||
name = 'wsgi_server'
|
||||
|
||||
ret = {'name': name,
|
||||
'changes': {},
|
||||
'result': None,
|
||||
'comment': ''}
|
||||
|
||||
comt = ('Supervisord module not activated.'
|
||||
' Do you need to install supervisord?')
|
||||
ret.update({'comment': comt, 'result': False})
|
||||
self.assertDictEqual(supervisord.mod_watch(name), ret)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
from integration import run_tests
|
||||
run_tests(SupervisordTestCase, needs_daemon=False)
|
Loading…
Add table
Reference in a new issue