salt/tests/unit/modules/test_devmap.py

54 lines
1.5 KiB
Python
Raw Normal View History

# -*- coding: utf-8 -*-
'''
:codeauthor: Rupesh Tare <rupesht@saltstack.com>
'''
2015-01-08 19:44:34 +00:00
# Import Python libs
2018-01-21 20:08:08 +00:00
from __future__ import absolute_import, print_function, unicode_literals
2017-02-19 15:35:30 +00:00
import os.path
2015-01-08 19:44:34 +00:00
# Import Salt Testing Libs
2017-02-19 15:35:30 +00:00
from tests.support.mixins import LoaderModuleMockMixin
from tests.support.unit import TestCase, skipIf
from tests.support.mock import (
MagicMock,
patch,
NO_MOCK,
NO_MOCK_REASON
)
# Import Salt Libs
import salt.modules.devmap as devmap
@skipIf(NO_MOCK, NO_MOCK_REASON)
2017-02-19 15:35:30 +00:00
class DevMapTestCase(TestCase, LoaderModuleMockMixin):
'''
Test cases for salt.modules.devmap
'''
def setup_loader_modules(self):
return {devmap: {}}
2017-02-19 15:35:30 +00:00
def test_multipath_list(self):
'''
Test for Device-Mapper Multipath list
'''
mock = MagicMock(return_value='A')
with patch.dict(devmap.__salt__, {'cmd.run': mock}):
self.assertEqual(devmap.multipath_list(), ['A'])
def test_multipath_flush(self):
'''
Test for Device-Mapper Multipath flush
'''
mock = MagicMock(return_value=False)
with patch.object(os.path, 'exists', mock):
self.assertEqual(devmap.multipath_flush('device'),
'device does not exist')
mock = MagicMock(return_value=True)
with patch.object(os.path, 'exists', mock):
mock = MagicMock(return_value='A')
with patch.dict(devmap.__salt__, {'cmd.run': mock}):
self.assertEqual(devmap.multipath_flush('device'), ['A'])