Exemple #1
0
def testGetDirectoriesToProcessOpenSUSE(depotDirectory, patchUserInfo, slesSupport, tftpdir):
    with mock.patch('OPSI.Util.Task.Rights.getWebserverRepositoryPath', lambda: '/path/to/apache'):
        with mock.patch('OPSI.Util.Task.Rights.isOpenSUSE', lambda: slesSupport):
            directories = [d for d, _ in getDirectoriesAndExpectedRights('/')]

    assert u'/etc/opsi' in directories
    assert u'/var/lib/opsi' in directories
    assert u'/var/log/opsi' in directories
    assert tftpdir in directories
    assert '/path/to/apache' in directories
Exemple #2
0
def testFilterDirsAndRightsReturnsAllWhenRootIsGiven(patchUserInfo):
    defaultDirGenerator = getDirectoriesAndExpectedRights('/')
    dar = list(filterDirsAndRights('/', defaultDirGenerator))

    assert len(dar) > 4

    dirsReturned = set()

    for dirname, rights in dar:
        assert dirname
        assert rights

        dirsReturned.add(dirname)

    assert len(dirsReturned) == len(dar), "Duplicate entry returned"
Exemple #3
0
def testLimitingFilterDirsAndRights(patchUserInfo):
    depotDir = '/var/lib/opsi/depot'
    depotDirExists = os.path.exists(depotDir)

    defaultDirGenerator = getDirectoriesAndExpectedRights(depotDir)
    dar = list(filterDirsAndRights(depotDir, defaultDirGenerator))

    assert 3 > len(dar) >= 1

    for dirname, _ in dar:
        if depotDirExists and dirname == '/var/lib/opsi/depot':
            break
        elif not depotDirExists and dirname == '/var/lib/opsi':
            break
    else:
        print("Dar is: {0}".format(dar))
        print("Exists directory? {0}".format(depotDirExists))
        raise RuntimeError("Missing path to workbench!")
Exemple #4
0
def testGettingDirectoriesAndRights(patchUserInfo):
    dm = dict(getDirectoriesAndExpectedRights('/'))

    for rights in dm.values():
        # For now we just want to make sure these fields are filled.
        assert rights.uid
        assert rights.gid

    rights = dm[u'/etc/opsi']
    assert rights.files == 0o660
    assert rights.directories == 0o770
    assert rights.correctLinks

    rights = dm[u'/var/lib/opsi']
    assert rights.files == 0o660
    assert rights.directories == 0o770
    assert not rights.correctLinks

    rights = dm[u'/var/log/opsi']
    assert rights.files == 0o660
    assert rights.directories == 0o770
    assert rights.correctLinks
Exemple #5
0
def testGettingDirectories(patchUserInfo, depotDirectory):
    directories = [d for d, _ in getDirectoriesAndExpectedRights('/tmp')]
    assert len(directories) > 2