Exemplo n.º 1
0
 def testGetTemporaryFileObject(self):
     """ Tests the creation of the temporary file object. """
     
     expectedName = "/temp/tempfile"
     expectedFile = StringIO("TestContent")
     mkstempMock = SimpleMock((expectedFile, expectedName))
     fdOpenMock = SimpleMock(expectedFile)
     namedTemporaryFileMock = SimpleMock(name=expectedName, file=expectedFile)
     filestorer.mkstemp = mkstempMock
     filestorer.os.fdopen = fdOpenMock
     filestorer.NamedTemporaryFile = SimpleMock(namedTemporaryFileMock)
     self._fileStorer.readData = SimpleMock(StringIO("Some test data."))
     
     self._fileStorer._tempfile = None
     self.assertEquals(self._fileStorer.getTemporaryFileObject(), (expectedName, expectedFile))
     
     #self._fileStorer._tempfile = None
     #self._fileStorer.readData = SimpleMock(StringIO("Some test data."))
     #namedTemporaryFileMock.error = IOError("")
     #self.assertRaises(PersistenceError, self._fileStorer.getTemporaryFileObject)
     
     self._fileStorer._tempfile = None
     self._fileStorer.readData = SimpleMock(StringIO("Some test data."))
     self.assertEquals(self._fileStorer.getTemporaryFileObject("", False), (expectedName, expectedFile))
     
     self._fileStorer._tempfile = None
     self._fileStorer.readData = SimpleMock(StringIO("Some test data."))
     mkstempMock.error = IOError("")
     self.assertRaises(PersistenceError, self._fileStorer.getTemporaryFileObject, "", False)
Exemplo n.º 2
0
    def testComparison(self):
        """ Tests the comparison of two instances. """

        # checking comparison with self
        self.assertEquals(self._acl, self._acl)

        # checking comparison of different empty ACLs
        anotherAcl = acl.AccessControlList()
        self.assertEquals(self._acl, anotherAcl)

        # adding a new principal to only one ACL should make them not equal
        aPrincipal = SimpleMock(identifier="aPrincipal")
        anotherAcl.grantPrivilege(aPrincipal, self._SUPPORTED_PRIVILEGE)
        self.assertNotEquals(self._acl, anotherAcl)

        # making them equal again
        self._acl.grantPrivilege(aPrincipal, self._SUPPORTED_PRIVILEGE)
        self.assertEquals(self._acl, anotherAcl)

        # ACLs with different principal order should be not equal
        anotherPrincipal = SimpleMock(identifier="anotherPrincipal")
        self._acl.grantPrivilege(anotherPrincipal, self._SUPPORTED_PRIVILEGE)
        anotherAcl.grantPrivilege(anotherPrincipal, self._SUPPORTED_PRIVILEGE)
        self.assertEquals(self._acl, anotherAcl)
        self._acl.setIndex(aPrincipal, 1)
        self.assertNotEquals(self._acl, anotherAcl)

        # checking comparison of a copy
        self.assertEquals(self._acl, deepcopy(self._acl))
Exemplo n.º 3
0
    def setUp(self):
        """ Mocks an utility functionality. """

        factory.FileSystem._getConnectionPool = SimpleMock(
            SimpleMock(SimpleMock()))
        self._factory = factory.FileSystem(
            BaseConfiguration("http://s3.amazonaws.de/bucketname/keyname"))
Exemplo n.º 4
0
 def testValidationError(self):
     validatorsWithError = [
         SimpleMock(error=ValueError),
         SimpleMock(error=ValueError)
     ]
     self.validator.validators = validatorsWithError
     self.assertRaises(ValueError, self.validator, "testValue")
Exemplo n.º 5
0
 def testStoreData(self):
     """ DefaultDataPersisterTestCase: Tests the retrieval of data. """
     
     self._persister.storeData(SimpleMock())
     
     self._fileStorerMock.error = PersistenceError("")
     self.assertRaises(PersistenceError, self._persister.storeData, SimpleMock())
Exemplo n.º 6
0
    def testCreateResource(self):
        """ Tests the normal behavior of the createResource method. """

        self._defaultAdapter.createResource()
        adapter = DataWebdavAdapter("identifier", SimpleMock(), SimpleMock(""),
                                    SimpleMock(SimpleMock()))
        self.assertRaises(PersistenceError, adapter.createResource)
Exemplo n.º 7
0
    def setUp(self):
        """ Creates default adapter usable by test cases. """

        self._defaultAdapter = DataWebdavAdapter("/path/identifier",
                                                 SimpleMock(),
                                                 SimpleMock("identifier"),
                                                 SimpleMock(SimpleMock()))
Exemplo n.º 8
0
 def __init__(self, pathMock, returnValue=None, error=None):
     """ Constructor. """
     
     SimpleMock.__init__(self, returnValue, error)
     self.returnValue = returnValue
     self.error = error
     self.path = pathMock
Exemplo n.º 9
0
    def testErrorHandlingOnLibraryInstanceCreation(self):
        """ Tests the error handling when creating concrete library instances. """

        adapter = DataWebdavAdapter("/anotherIdentifier", SimpleMock(),
                                    SimpleMock("anotherIdentifier"),
                                    SimpleMock(error=PersistenceError("")))
        try:
            self.assertFalse(adapter.isLink)
            self.fail("PersistenceError not raised.")
        except PersistenceError:
            self.assertTrue(True)
        try:
            self.assertFalse(adapter.isLeaf)
            self.fail("PersistenceError not raised.")
        except PersistenceError:
            self.assertTrue(True)
        try:
            self.assertFalse(adapter.isCollection)
            self.fail("PersistenceError not raised.")
        except PersistenceError:
            self.assertTrue(True)
        self.assertRaises(PersistenceError, adapter.createLink,
                          self._defaultAdapter)
        self.assertRaises(PersistenceError, adapter.createResource)
        self.assertRaises(PersistenceError, adapter.createCollection)
        self.assertRaises(PersistenceError, adapter.getChildren)
        self.assertRaises(PersistenceError, adapter.writeData, StringIO(""))
        self.assertRaises(PersistenceError, adapter.readData)
        self.assertRaises(PersistenceError, adapter.delete)
        self.assertRaises(PersistenceError, adapter.move, self._defaultAdapter)
        self.assertRaises(PersistenceError, adapter.copy, self._defaultAdapter)
Exemplo n.º 10
0
    def testGetBucket(self):
        """ Tests the getBucket method"""

        #failure look up
        try:
            self.assertRaises(
                PersistenceError,
                DataS3Adapter("identifier",
                              SimpleMock(SimpleMock(error=self.responseError)),
                              ''))
            self.fail("PersistenceError not thrown")
        except PersistenceError:
            self.assertTrue(True)
        #failure create
        try:
            self.assertRaises(
                PersistenceError,
                DataS3Adapter(
                    "identifier",
                    SimpleMock(
                        SimpleMock(returnValue=None,
                                   error=self.responseError)), ''))
            self.fail("PersistenceError not thrown")
        except PersistenceError:
            self.assertTrue(True)
Exemplo n.º 11
0
    def createFileStorer(self, identifier):
        """ Mocks factory method. """

        fileStorerMock = SimpleMock(identifier=identifier, fileSystem=self,
                                    parent=SimpleMock(list(), name=""))
        fileStorerMock.value = fileStorerMock
        return fileStorerMock
Exemplo n.º 12
0
 def setUp(self):
     """ Creates object under test. """
     
     self._fileStorerMock = SimpleMock(name="base", parent=SimpleMock(SimpleMock()))
     self._itemMock = SimpleMock(dataUri="/aasdsad", properties={ARCHIVE_PART_COUNT_ID:SimpleMock(value=1)})
     self._baseDataPersisterMock = SimpleMock(fileStorer=self._fileStorerMock)
     self._persister = persisters.ArchiveDataPersister("dataState", self._itemMock, self._baseDataPersisterMock)
Exemplo n.º 13
0
    def testGetChildren(self):
        """ Tests the normal behavior of the getChildren method. """

        adapter = DataWebdavAdapter(
            "/identifier", SimpleMock(), SimpleMock("/Path"),
            SimpleMock(_VALID_GETCHILDREN_WEBDAV_RESULT))
        self.assertEquals(adapter.getChildren(), _VALID_GETCHILDREN_RESULT)
Exemplo n.º 14
0
    def testRetrieve(self):
        # Success
        expectedResult = self._initValidRetrieveResult()
        connectionMock = SimpleMock(methodNameResultMap=\
            {"getProperty": ('{"name": "me"}', None),
            "info": ({"lastChangedDate": "", "owner": "", "size": "10", "creationDate": ""}, None)})
        defaultAdapter = adapter.MetadataSubversionAdapter(
            "identifier", SimpleMock(connectionMock))
        self.assertEquals(defaultAdapter.retrieve(),
                          expectedResult)  # Filter nothing
        self.assertEquals(defaultAdapter.retrieve(list()),
                          expectedResult)  # Filter nothing
        self.assertEquals(defaultAdapter.retrieve([const.SIZE]),
                          {const.SIZE: MetadataValue("10")})  # Filter size

        # Error access system properties
        connectionMock.methodNameResultMap = {
            "info": (None, SubversionError(""))
        }
        self.assertRaises(PersistenceError, defaultAdapter.retrieve)

        # Error accessing custom properties
        connectionMock.methodNameResultMap = {
            "getProperty": (None, SubversionError(""))
        }
        self.assertRaises(PersistenceError, defaultAdapter.retrieve)
Exemplo n.º 15
0
    def createFileStorer(self, identifier):
        """ Mocks factory method. """

        fileStorerMock = SimpleMock(identifier=identifier,
                                    fileSystem=self,
                                    parent=SimpleMock(list(), name=""))
        fileStorerMock.value = fileStorerMock
        return fileStorerMock
Exemplo n.º 16
0
    def testSearchSuccess(self):
        """ Tests successful search. """

        adapter = SearchWebdavAdapter(
            SimpleMock(), SimpleMock("/PATH"),
            SimpleMock(SimpleMock(_VALID_WEBDAV_SEARCH_RESULT)))
        self.assertEquals(adapter.search([], SimpleMock("/PATH")),
                          _VALID_SEARCH_RESULT)
Exemplo n.º 17
0
    def setUp(self):
        """ Creates a default object under test. """

        self._defaultAdapter = MetadataWebdavAdapter("identifier",
                                                     SimpleMock(),
                                                     SimpleMock(),
                                                     SimpleMock(),
                                                     SimpleMock(SimpleMock()))
Exemplo n.º 18
0
    def testDeleteSuccess(self):
        """ Tests successful deletion of meta data. """

        connectionMock = SimpleMock(methodNameResultMap={"setProperty": (None, SubversionError), \
                                    "getProperty": ("{\"1\": \"value\"}", None)})
        defaultAdapter = adapter.MetadataSubversionAdapter(
            "identifier", SimpleMock(connectionMock))
        self.assertRaises(PersistenceError, defaultAdapter.delete, ["1", "2"])
Exemplo n.º 19
0
 def setUp(self):
     self._privilegeMapper = SimpleMock()
     self._connectionHelper = SimpleMock(SimpleMock())
     self._adapter = adapter.PrivilegeWebdavAdapter("identifier",
                                                    SimpleMock(),
                                                    SimpleMock(),
                                                    self._privilegeMapper,
                                                    self._connectionHelper)
Exemplo n.º 20
0
 def __init__(self, stderr="", stdout="", returnValue=None, error=None, methodNameResultMap=None):
     """ Constructor. """
     
     SimpleMock.__init__(self, returnValue, error, methodNameResultMap)
     self._stderr = StringIO(stderr)
     self.stderrRaiseTimeoutError = False 
     self._stdout = StringIO(stdout)
     self.stdoutRaiseTimeoutError = False 
Exemplo n.º 21
0
    def setUp(self):
        """ Mocks an utility functionality. """

        self._collectionStorerMock = _CollectionStorerMock()
        factory.createCollectionStorer = self._createCollectionStorerMock
        factory.FileSystem._getConnectionPool = SimpleMock(SimpleMock())
        self._factory = factory.FileSystem(
            BaseConfiguration("http://test.de/mypath/"))
Exemplo n.º 22
0
    def testEmptyConnectionsAreIgnored(self):
        """ Checks whether empty connections are ignored. """

        self._handler._preferences = SimpleMock(connections=[
            SimpleMock(url=None, username=None, password=None),
            SimpleMock(url="uri", username=None, password=None)
        ])
        self.assertEquals(len(self._handler.connectionUris), 1)
Exemplo n.º 23
0
    def testSuccessfullValidation(self):
        successValidators = [SimpleMock(), SimpleMock()]
        self.validator.validators = successValidators
        self.validator("testValue")

        validatorsWithOneError = [SimpleMock(error=ValueError), SimpleMock()]
        self.validator.validators = validatorsWithOneError
        self.validator("testValue")
Exemplo n.º 24
0
 def testMove(self):
     """ HierarchicalDataPersisterTestCase: Tests the additional actions performed during move operations. """
     
     itemMock = SimpleMock(dataPersister=SimpleMock(fileStorer=SimpleMock(parent=SimpleMock())))
     self._persister.move(itemMock)
     
     self._fileStorerMock.error = PersistenceError("")
     self.assertRaises(PersistenceError, self._persister.move, itemMock)
Exemplo n.º 25
0
    def setUp(self):
        """ Creates the required mocks. """

        self._targetItemMock = SimpleMock()
        self._itemMock = SimpleMock()
        self._repositoryMock = SimpleMock(self._itemMock)
        self._repositoryManagerInstanceMock = SimpleMock(
            workingRepository=self._repositoryMock)
        item_support.repositoryManagerInstance = self._repositoryManagerInstanceMock
Exemplo n.º 26
0
    def testReadData(self):
        """ Tests the normal behavior of the readData method. """

        #success
        adapter = DataS3Adapter(
            "identifier", SimpleMock(SimpleMock(SimpleMock(SimpleMock()))),
            SimpleMock())
        fileObject = adapter.readData()
        self.assertEquals(fileObject.read(), "")
Exemplo n.º 27
0
    def testIsCollection(self):
        """ Tests the normal behavior of the isResource method. """

        #true
        adapter = DataS3Adapter("/", SimpleMock(SimpleMock()), SimpleMock())
        self.assertTrue(adapter.isCollection)
        #false
        adapter = DataS3Adapter("identifier", SimpleMock(SimpleMock()), '')
        self.assertFalse(adapter.isCollection)
Exemplo n.º 28
0
    def testCreateLink(self):
        # Success
        self._adapter.createLink(SimpleMock(identifier="/destPath"))

        # Error
        self._connectionMock.methodNameResultMap = \
            {"setProperty": (None, SubversionError(""))}
        self.assertRaises(PersistenceError, self._adapter.createLink,
                          SimpleMock(identifier="/destPath"))
Exemplo n.º 29
0
 def setUp(self):
     self._connectionMock = SimpleMock()
     self._createSvnConnectionMock = SimpleMock(self._connectionMock)
     connection_pool.util.createSubversionConnection = self._createSvnConnectionMock
     factory.FileSystem._connectionManager = ConnectionPoolManager(
         10)  # Ensure it is empty
     self._factory = factory.FileSystem(
         BaseConfiguration("http://svn.test.de/svn"))
     self.assertTrue(self._factory.hasCustomMetadataSupport)
Exemplo n.º 30
0
    def setUp(self):
        """ Creates test environment. """

        self._scriptInitMock = SimpleMock()
        self._scriptCollectionInitMock = SimpleMock()
        self._initScriptInitPointer = script.Script.__init__
        self._initScriptCollectionPointer = script.ScriptCollection.__init__
        script.Script.__init__ = self._scriptInitMock
        script.ScriptCollection.__init__ = self._scriptCollectionInitMock
Exemplo n.º 31
0
    def testErrorHandlingOnLibraryInstanceCreation(self):
        """ Tests the error handling when creating concrete library instances. """

        adapter = MetadataWebdavAdapter("identifier", SimpleMock(),
                                        SimpleMock(), SimpleMock(),
                                        SimpleMock(error=PersistenceError("")))
        self.assertRaises(PersistenceError, adapter.retrieve)
        self.assertRaises(PersistenceError, adapter.update, dict())
        self.assertRaises(PersistenceError, adapter.delete, [])
Exemplo n.º 32
0
 def testMove(self):
     """ Test move method of the archive data persister. """
     
     itemMock = SimpleMock(dataUri="/aasdsad", dataPersister=self._persister)
     self._persister.move(itemMock)
     
     itemMock.dataUri = "/Peter/aasdsad"
     self._persister._count = 2
     self._persister.move(itemMock)
Exemplo n.º 33
0
    def setUp(self):
        """ Creates object under test. """

        self._createFileStorerMock = SimpleMock()
        registry.createFileStorer = self._createFileStorerMock
        self._createScriptMock = SimpleMock()
        registry.createScript = self._createScriptMock
        self._registry = registry.ScriptRegistry(
            SimpleMock(scriptUris=["path1"]))
Exemplo n.º 34
0
 def testRetrieveSuccess(self):
     """ Tests successful meta data retrieval. """
     
     webdavStorerMock = SimpleMock(dict())
     adapter = MetadataWebdavAdapter("identifier", SimpleMock(), SimpleMock(), 
                                     SimpleMock("1"), SimpleMock(webdavStorerMock))
     self.assertEquals(adapter.retrieve(), _VALID_PROPERTY_RESULT)
     self.assertEquals(adapter.retrieve(list()), dict())
     
     webdavStorerMock.value = {("1", "1"): SimpleMock("value")}
     self.assertEquals(adapter.retrieve(["1"]), {"1": MetadataValue("value")})
Exemplo n.º 35
0
 def testCreate(self):
     """ Tests the creation of an ACE. """
     
     persistenceAce = SimpleMock()
     persistenceAce.principal = principal.Principal(identifier="principal")
     persistenceAce.grantedPrivileges = [privilege.READ_PRIVILEGE.identifier]
     persistenceAce.deniedPrivileges = [privilege.WRITE_PRIVILEGE.identifier]
     mappedAce = self._ace.create(persistenceAce)
     
     self.assertEquals(mappedAce.principal.identifier, "principal")
     self.assertEquals(mappedAce.grantedPrivileges, set([privilege.READ_PRIVILEGE]))
     self.assertEquals(mappedAce.deniedPrivileges, set([privilege.WRITE_PRIVILEGE]))
Exemplo n.º 36
0
 def testCopy(self):
     """ FlatDataPersisterTestCase: Tests the additional actions performed during copying. """
     
     itemMock = SimpleMock(uri="test", 
                           properties={CONTENT_IDENTIFIER_ID:None})
     self._persister.copy(itemMock)
     
     itemMock.properties = dict()
     self.assertRaises(ItemError, self._persister.copy, itemMock)
     
     self._fileStorerMock.error = PersistenceError("")
     self.assertRaises(PersistenceError, self._persister.copy, itemMock)
Exemplo n.º 37
0
 def testAddIcon(self):
     """ Tests the adding of an icon. """
     
     self._sourceFileStorer.value = SimpleMock()
     self._targetFileStorer.value = SimpleMock()
     localIconFileStorerMock = SimpleMock()
     localIconFileStorerMock.methodNameResultMap = {"exists": (True, None), "readData": (SimpleMock(), None)}
     self._createFileStorerMock.value = SimpleMock(localIconFileStorerMock)
     self._handler.addIcon("test", "/test/zzz/testPath")
     
     localIconFileStorerMock.methodNameResultMap = {"exists": (False, None)}
     self.assertRaises(ConfigurationError, self._handler.addIcon, "test", "/test/zzz/testPath")
     
     localIconFileStorerMock.methodNameResultMap = {"exists": (True, None), "readData": (None, PersistenceError(""))}
     self.assertRaises(ConfigurationError, self._handler.addIcon, "test", "/test/zzz/testPath")
     
     self._createFileStorerMock.error = PersistenceError("")
     self.assertRaises(ConfigurationError, self._handler.addIcon, "test", "/test/zzz/testPath")
Exemplo n.º 38
0
    def testRetrieve(self):
        # Success
        expectedResult = self._initValidRetrieveResult()
        connectionMock = SimpleMock(methodNameResultMap=\
            {"getProperty": ('{"name": "me"}', None),
            "info": ({"lastChangedDate": "", "owner": "", "size": "10", "creationDate": ""}, None)})
        defaultAdapter = adapter.MetadataSubversionAdapter("identifier", SimpleMock(connectionMock))
        self.assertEquals(defaultAdapter.retrieve(), expectedResult) # Filter nothing
        self.assertEquals(defaultAdapter.retrieve(list()), expectedResult) # Filter nothing
        self.assertEquals(defaultAdapter.retrieve([const.SIZE]), 
                          {const.SIZE: MetadataValue("10")}) # Filter size

        # Error access system properties
        connectionMock.methodNameResultMap = {"info": (None, SubversionError(""))}
        self.assertRaises(PersistenceError, defaultAdapter.retrieve)

        # Error accessing custom properties
        connectionMock.methodNameResultMap = {"getProperty": (None, SubversionError(""))}
        self.assertRaises(PersistenceError, defaultAdapter.retrieve)
Exemplo n.º 39
0
 def testCreate(self):
     """ Tests the creation from persistence format. """
     
     persistedPrincipal = SimpleMock()
     persistedPrincipal.identifier = "principal"
     persistedPrincipal.type = "____user____"
     persistedGroup = SimpleMock()
     persistedGroup.identifier = "group"
     persistedGroup.type = "____group____"
     persistedGroup.memberof = list()
     persistedPrincipal.memberof = [persistedGroup]
     mappedPrincipal = self._principal.create(persistedPrincipal)
     self.assertEquals(mappedPrincipal, self._principal)
     self.assertEquals(len(mappedPrincipal.memberof), 1)
     
     # Checking loop detection
     persistedPrincipal.memberof.append(persistedPrincipal)
     self.assertRaises(CoreError, self._principal.create, persistedPrincipal)
     
     # Checking invalid type
     persistedPrincipal.type = "unknown"
     self.assertRaises(CoreError, self._principal.create, persistedPrincipal)
Exemplo n.º 40
0
 def __init__(self, returnValue=None, error=None):
     """ Constructor. """
     
     self.returnValue = returnValue
     self.error = error
     SimpleMock.__init__(self, returnValue, error)