def testVersionException(self):
     from comoonics.cdsl.ComCdslRepository import CdslVersionException
     try:
         getCdslRepository(clusterinfo=setupCluster.clusterInfos[0], root=os.path.join(baseSetup.tmppath, "repo7"))
         self.assert_("CdslVersionException not risn. Error")
     except CdslVersionException:
         pass
    def __init__(self):
        super(SetupCDSLRepository, self).__init__()
        from comoonics.cdsl.ComCdslRepository import ComoonicsCdslRepository
        from comoonics.cdsl import getCdslRepository
        from comoonics.ComPath import Path
        import shutil
        os.mkdir(os.path.join(tmppath, "repo1"))
        os.mkdir(os.path.join(tmppath, "repo1/repo2"))
        os.mkdir(os.path.join(tmppath, "repo1/repo2/repo3"))
        os.mkdir(os.path.join(tmppath, "repo4"))
        os.mkdir(os.path.join(tmppath, "repo4/repo5"))
        os.mkdir(os.path.join(tmppath, "repo4/repo5/repo6"))
        os.mkdir(os.path.join(tmppath, "repo7"))
        os.mkdir(os.path.join(tmppath, "repo8"))
        os.mkdir(os.path.join(tmppath, "repo8/repo9"))
        os.mkdir(os.path.join(tmppath, "repo8/repo9/repo10"))
        
        # Need for testing migration!!
        # Will be created inside test not here!!
        os.makedirs(os.path.join(tmppath, "repo7", "var/lib/cdsl"))
        shutil.copyfile(os.path.join(testpath, "cdsl4.xml"), os.path.join(tmppath, "repo7", ComoonicsCdslRepository.default_resources[1]))
        
        wpath=Path()
        wpath.pushd(tmppath)
        self.cdslRepositories= []
        
        repopath=os.path.join(tmppath, "repo1")
        cdslRepository1 = getCdslRepository(root=repopath, usenodeids="True")
        cdslRepository2 = getCdslRepository(root=repopath, mountpoint="repo2", usenodeids="True")
        cdslRepository1.addRepository(cdslRepository2)
        cdslRepository3 = getCdslRepository(root=os.path.join(repopath,"repo2"), mountpoint="repo3", usenodeids="True")
        cdslRepository2.addRepository(cdslRepository3)
        self.cdslRepositories.append(cdslRepository1)
        
        repopath=os.path.join(tmppath, "repo4")
        cdslRepository1 = getCdslRepository(root=repopath, mountpoint="", usenodeids="True", maxnodeidnum="4")
        cdslRepository2 = getCdslRepository(root=repopath, mountpoint="repo5", usenodeids="True", maxnodeidnum="4")
        cdslRepository1.addRepository(cdslRepository2)
        cdslRepository3 = getCdslRepository(root=os.path.join(repopath, "repo5"), mountpoint="repo6", usenodeids="True", maxnodeidnum="4")
        cdslRepository2.addRepository(cdslRepository3)
        self.cdslRepositories.append(cdslRepository1)

        repopath=os.path.join(tmppath, "repo8")
        cdslRepository1 = getCdslRepository(root=repopath, usenodeids="True")
        cdslRepository2 = getCdslRepository(root=repopath, mountpoint="repo9", usenodeids="True")
        cdslRepository1.addRepository(cdslRepository2)
        cdslRepository3 = getCdslRepository(root=os.path.join(repopath,"repo9"), mountpoint="repo10", usenodeids="True")
        cdslRepository2.addRepository(cdslRepository3)
        self.cdslRepositories.append(cdslRepository1)

        wpath.popd()
 def createDefaultRepository(clusterInfo, **keys):
     repository=keys.get("repository", None)
     if repository:
         keys["resource"]=keys.get("resource", repository.getResource())
         keys["root"]=keys.get("root", repository.root)
         keys["mountpoint"]=keys.get("mountpoint", repository.getMountpoint())
         keys["cdsltree"]=keys.get("cdsltree", repository.getTreePath())
         keys["cdsltreeshared"]=keys.get("cdsltreeshared", repository.getSharedTreepath())
         keys["cdsllink"]=keys.get("cdsllink", repository.getLinkPath())
         keys["defaultdir"]=keys.get("defaultdir", repository.getDefaultDir())
         keys["maxnodeidnum"]=keys.get("maxnodeidnum", repository.getMaxnodeidnum())
         keys["nodeprefix"]=keys.get("nodeprefix", repository.getNodePrefix())
         keys["usenodeids"]=keys.get("usenodeids", repository.getUseNodeids())
         keys["expandstring"]=keys.get("expandstring", repository.getExpandString())
     return getCdslRepository(clusterinfo=clusterInfo, **keys)
        _cdslsrev.reverse()
        for _cdsl in _cdslsrev:
            #            print "- %s\n" %_cdsl.src
            _cdsl.delete(recursive=False, symbolic=False, force=False)
            self.assertFalse(_cdsl.exists(), "%s CDSL %s exists although it was removed before." % (_cdsl.type, _cdsl))
            for __cdsl in repository.getCdsls():
                self.assertTrue(
                    __cdsl.exists(), "The still existant %s cdsl %s does not exist any more." % (__cdsl.type, __cdsl)
                )


from comoonics.cdsl import getCdslRepository
import os

# import sys;sys.argv = ['', 'Test.testName']
olddir = os.path.realpath(os.curdir)
os.chdir(setup.tmppath)
setupCluster = setup.SetupCluster()
if __name__ == "__main__":
    repository = getCdslRepository(root=setup.tmppath, usenodeids="True")
    setupCdsls = setup.SetupCDSLs(repository)
    repository.buildInfrastructure(setupCluster.clusterInfos[0])
    setupCdsls.setupCDSLInfrastructure(setup.tmppath, repository, setupCluster.clusterInfos[0])
    module = setup.MyTestProgram(module=test_Cdsl(methodName="run"))
    if module.result.wasSuccessful():
        setupCdsls.cleanUpInfrastructure(setup.tmppath, repository, setupCluster.clusterInfos[0])
        setup.cleanup()
    os.chdir(olddir)
    if not module.result.wasSuccessful():
        sys.exit(1)