salt/tests/unit/modules/blockdev_test.py
2016-03-10 10:57:19 -07:00

66 lines
2.2 KiB
Python

# -*- coding: utf-8 -*-
# Import Python libs
from __future__ import absolute_import
# Import Salt Testing Libs
from salttesting.unit import skipIf, TestCase
from salttesting.helpers import ensure_in_syspath
from salttesting.mock import NO_MOCK, NO_MOCK_REASON, MagicMock, patch
ensure_in_syspath('../../')
# Import Salt Libs
import salt.modules.blockdev as blockdev
import salt.utils
blockdev.__salt__ = {
'cmd.has_exec': MagicMock(return_value=True),
'config.option': MagicMock(return_value=None)
}
@skipIf(NO_MOCK, NO_MOCK_REASON)
class TestBlockdevModule(TestCase):
def test_dump(self):
with patch.dict(blockdev.__salt__, {'disk.dump': MagicMock(return_value=True)}):
self.assertTrue(blockdev.dump('/dev/sda'))
@skipIf(not salt.utils.which('wipefs'), 'Wipefs not found')
def test_wipe(self):
with patch.dict(blockdev.__salt__, {'disk.wipe': MagicMock(return_value=True)}):
self.assertTrue(blockdev.wipe('/dev/sda'))
def test_tune(self):
mock_run = MagicMock(return_value='712971264\n512\n512\n512\n0\n0\n88\n712971264\n365041287168\n512\n512')
with patch.dict(blockdev.__salt__, {'disk.tune': MagicMock(return_value=True)}):
kwargs = {'read-ahead': 512, 'filesystem-read-ahead': 512}
ret = blockdev.tune('/dev/sda', **kwargs)
self.assertTrue(ret)
@skipIf(not salt.utils.which('sync'), 'sync not found')
@skipIf(not salt.utils.which('mkfs'), 'mkfs not found')
def test_format(self):
'''
unit tests for blockdev.format
'''
device = '/dev/sdX1'
fs_type = 'ext4'
mock = MagicMock(return_value=0)
with patch.dict(blockdev.__salt__, {'cmd.retcode': mock}):
self.assertEqual(blockdev.format_(device), True)
def test_fstype(self):
'''
unit tests for blockdev.fstype
'''
device = '/dev/sdX1'
fs_type = 'ext4'
mock = MagicMock(return_value='FSTYPE\n{0}'.format(fs_type))
with patch.dict(blockdev.__salt__, {'cmd.run': mock}):
self.assertEqual(blockdev.fstype(device), fs_type)
if __name__ == '__main__':
from integration import run_tests
run_tests(TestBlockdevModule, needs_daemon=False)