mirror of
https://github.com/valitydev/salt.git
synced 2024-11-07 17:09:03 +00:00
46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
# -*- coding: utf-8 -*-
|
|
'''
|
|
:codeauthor: :email:`Shane Lee <slee@saltstack.com>`
|
|
'''
|
|
# Import Python libs
|
|
from __future__ import absolute_import, print_function, unicode_literals
|
|
|
|
# Import Salt Testing Libs
|
|
from tests.support.unit import TestCase, skipIf
|
|
from tests.support.mock import (
|
|
patch,
|
|
mock_open,
|
|
MagicMock,
|
|
NO_MOCK,
|
|
NO_MOCK_REASON
|
|
)
|
|
|
|
# Import Salt Libs
|
|
import salt.grains.fibre_channel as fibre_channel
|
|
|
|
|
|
@skipIf(NO_MOCK, NO_MOCK_REASON)
|
|
class FibreChannelGrainsTestCase(TestCase):
|
|
'''
|
|
Test cases for iscsi grains
|
|
'''
|
|
def test_windows_fibre_channel_wwns_grains(self):
|
|
wwns = ['20:00:00:25:b5:11:11:4c',
|
|
'20:00:00:25:b5:11:11:5c',
|
|
'20:00:00:25:b5:44:44:4c',
|
|
'20:00:00:25:b5:44:44:5c']
|
|
cmd_run_mock = MagicMock(return_value=wwns)
|
|
with patch('salt.modules.cmdmod.powershell', cmd_run_mock):
|
|
ret = fibre_channel._windows_wwns()
|
|
assert ret == wwns, ret
|
|
|
|
def test_linux_fibre_channel_wwns_grains(self):
|
|
|
|
contents = ['0x500143802426baf4', '0x500143802426baf5']
|
|
files = ['file1', 'file2']
|
|
with patch('glob.glob', MagicMock(return_value=files)), \
|
|
patch('salt.utils.files.fopen', mock_open(read_data=contents)):
|
|
ret = fibre_channel._linux_wwns()
|
|
|
|
assert ret == ['500143802426baf4', '500143802426baf5'], ret
|