Пример #1
0
 def setUp(self):
     self.filesystem = fake_filesystem.FakeFilesystem(path_separator='/')
     self.glob = fake_filesystem_glob.FakeGlobModule(self.filesystem)
     directory = './xyzzy'
     self.filesystem.CreateDirectory(directory)
     self.filesystem.CreateDirectory('%s/subdir' % directory)
     self.filesystem.CreateDirectory('%s/subdir2' % directory)
     self.filesystem.CreateFile('%s/subfile' % directory)
     self.filesystem.CreateFile('[Temp]')
Пример #2
0
    def _refresh(self):
        '''Renew the fake file system and set the _isStale flag to `False`.'''
        if self._stubs is not None:
            self._stubs.SmartUnsetAll()
        self._stubs = mox3.stubout.StubOutForTesting()

        self.fs = fake_filesystem.FakeFilesystem()
        self.fake_os = fake_filesystem.FakeOsModule(self.fs)
        self.fake_glob = fake_filesystem_glob.FakeGlobModule(self.fs)
        self.fake_path = self.fake_os.path
        self.fake_shutil = fake_filesystem_shutil.FakeShutilModule(self.fs)
        self.fake_tempfile_ = fake_tempfile.FakeTempfileModule(self.fs)
        self.fake_open = fake_filesystem.FakeFileOpen(self.fs)

        self._isStale = False
Пример #3
0
 def replaceGlobs(self, globs_):
     globs = globs_.copy()
     if self._isStale:
         self._refresh()
     if 'os' in globs:
         globs['os'] = fake_filesystem.FakeOsModule(self.fs)
     if 'glob' in globs:
         globs['glob'] = fake_filesystem_glob.FakeGlobModule(self.fs)
     if 'path' in globs:
         fake_os = globs['os'] if 'os' in globs \
             else fake_filesystem.FakeOsModule(self.fs)
         globs['path'] = fake_os.path
     if 'shutil' in globs:
         globs['shutil'] = fake_filesystem_shutil.FakeShutilModule(self.fs)
     if 'tempfile' in globs:
         globs['tempfile'] = fake_tempfile.FakeTempfileModule(self.fs)
     return globs
Пример #4
0
import pytest
import salt.client
import os
from pyfakefs import fake_filesystem, fake_filesystem_glob

from mock import patch, MagicMock
from srv.modules.runners import ui_iscsi

fs = fake_filesystem.FakeFilesystem()
f_glob = fake_filesystem_glob.FakeGlobModule(fs)
f_os = fake_filesystem.FakeOsModule(fs)
f_open = fake_filesystem.FakeFileOpen(fs)


class TestIscsi():
    @patch('salt.client.LocalClient', autospec=True)
    @patch('srv.modules.runners.ui_iscsi.Iscsi.config', autospec=True)
    @patch('srv.modules.runners.ui_iscsi.Iscsi.interfaces', autospec=True)
    @patch('srv.modules.runners.ui_iscsi.Iscsi.images', autospec=True)
    def test_populate(self, localclient, config, interfaces, images):
        iscsi = ui_iscsi.Iscsi()
        result = iscsi.populate()
        assert (config.call_count == 1 and 'config' in result
                and interfaces.call_count == 1 and 'interfaces' in result
                and images.call_count == 1 and 'images' in result)

    @patch('salt.client.LocalClient', autospec=True)
    def test_interfaces(self, localclient):
        expected = [{
            'node': 'igw1.ceph',
            'addr': '172.16.11.16'
Пример #5
0
     - "{date}_{sample_name}_run-{run_number}_{trigger_name}"
"""

# Create a faked file system
fs = fake_fs.FakeFilesystem()

# Do some setup on the faked file system
ALL_EXISTING_FILES = [
    '/tmp/l1t/L1Ntuple_1.root',
    '/tmp/l1t/L1Ntuple_2.root',
    '/tmp/l1t/L1Ntuple_3.root',
]
for f in ALL_EXISTING_FILES:
    fs.CreateFile(f)

glob = fake_glob.FakeGlobModule(fs)


def setup_func():
    "set up test fixtures"


def teardown_func():
    "tear down test fixtures"


def test_general_section():
    with patch('glob.glob', glob.glob):
        parser = ConfigParser()
        parser._read_config(yaml.load(TEST_CONFIG))
        assert_equal(parser.get('general', 'version'), '0.0.1')
Пример #6
0
class TestOSDInstanceMethods():
    '''
    This class contains a set of functions that test srv.salt._modules.osd
    '''
    fs = fake_fs.FakeFilesystem()
    dev_dir = '/dev'
    devices = [
        'sda', 'sdaa', 'sda1', 'sda10', 'sdaa1', 'sdaa10', 'sdax', 'sdax10',
        'nvme0n1', 'nvme1n1', 'nvme100n1', 'nvme0n1p1', 'nvme0n1p100',
        'nvme0n100', 'nvme1n1p1', 'nvme100n1p1'
    ]
    for dev in devices:
        fs.CreateFile('{}/{}'.format(dev_dir, dev))

    f_glob = fake_glob.FakeGlobModule(fs)
    f_os = fake_fs.FakeOsModule(fs)
    f_open = fake_fs.FakeFileOpen(fs)

    @mock.patch('srv.salt._modules.osd.glob')
    def test_paths(self, glob):
        glob.return_value.glob = []
        ret = osd.paths()
        glob.glob.assert_called_once()
        glob.glob.assert_called_with('/var/lib/ceph/osd/*')
        assert type(ret) is list

    @mock.patch('srv.salt._modules.osd.glob')
    def test_devices(self, glob):
        glob.return_value.glob = []
        ret = osd.devices()
        glob.glob.assert_called_once()
        glob.glob.assert_called_with('/var/lib/ceph/osd/*')
        assert type(ret) is list

    @mock.patch('srv.salt._modules.osd.glob')
    def test_pairs(self, glob):
        glob.return_value.glob = []
        ret = osd.pairs()
        glob.glob.assert_called_once()
        glob.glob.assert_called_with('/var/lib/ceph/osd/*')
        assert type(ret) is list

    @pytest.mark.skip(reason="Postponed to later")
    def test_filter_devices(self):
        pass

    @pytest.mark.skip(reason="about to be refactored")
    def test_configured(self):
        pass

    @mock.patch('srv.salt._modules.osd.glob')
    def test_list_(self, glob):
        glob.return_value.glob = []
        osd.__grains__ = {'ceph': {'foo': 'mocked_grain'}}
        ret = osd.list_()
        glob.glob.assert_called_once()
        glob.glob.assert_called_with('/var/lib/ceph/osd/*/fsid')
        assert 'foo' in ret
        assert type(ret) is list
        osd.__grains__ = {}

    @mock.patch('srv.salt._modules.osd.glob')
    def test_list_no_grains(self, glob):
        glob.return_value.glob = []
        ret = osd.list_()
        glob.glob.assert_called_once()
        glob.glob.assert_called_with('/var/lib/ceph/osd/*/fsid')
        assert type(ret) is list

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_default(self):
        ret = osd._find_paths('/dev/sda')
        assert sorted(ret) == sorted(['/dev/sda10', '/dev/sda1'])

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_none(self):
        ret = osd._find_paths('/dev/sdx')
        assert ret == []

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_long(self):
        ret = osd._find_paths('/dev/sdaa')
        assert sorted(ret) == sorted(['/dev/sdaa10', '/dev/sdaa1'])

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_one_high(self):
        ret = osd._find_paths('/dev/sdax')
        assert sorted(ret) == sorted(['/dev/sdax10'])

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_nvme_1(self):
        ret = osd._find_paths('/dev/nvme0n1')
        assert sorted(ret) == sorted(['/dev/nvme0n1p1', '/dev/nvme0n1p100'])

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_nvme_2(self):
        ret = osd._find_paths('/dev/nvme0n1')
        assert sorted(ret) == sorted(['/dev/nvme0n1p1', '/dev/nvme0n1p100'])

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_nvme_3(self):
        ret = osd._find_paths('/dev/nvme1n1')
        assert ret == ['/dev/nvme1n1p1']

    @mock.patch('glob.glob', new=f_glob.glob)
    def test__find_paths_nvme_4(self):
        ret = osd._find_paths('/dev/nvme100n1')
        assert ret == ['/dev/nvme100n1p1']

    @mock.patch('srv.salt._modules.osd.time')
    def test_readlink_shortname(self, mock_time):
        osd.__salt__ = {}
        osd.__salt__['helper.run'] = mock.Mock()
        osd.__salt__['helper.run'].return_value = ('', '/dev/vdb', '')
        result = osd.readlink("/dev/vdb")

        assert result == "/dev/vdb"

    @mock.patch('srv.salt._modules.osd.time')
    def test_readlink_longname(self, mock_time):
        osd.__salt__ = {}
        osd.__salt__['helper.run'] = mock.Mock()
        osd.__salt__['helper.run'].return_value = ('', '/dev/sdb1', '')
        result = osd.readlink("/dev/disk/by-id/wwn-0x12345-part1")

        assert result == "/dev/sdb1"

    @mock.patch('srv.salt._modules.osd.time')
    def test_readlink_samename(self, mock_time):
        osd.__salt__ = {}
        osd.__salt__['helper.run'] = mock.Mock()
        osd.__salt__['helper.run'].return_value = (
            '', '/dev/disk/by-id/wwn-0x12345-part1', '')
        result = osd.readlink("/dev/disk/by-id/wwn-0x12345-part1")

        assert result == "/dev/disk/by-id/wwn-0x12345-part1"