Beispiel #1
0
    def test_checkoutWithBackupServerThatIsNotReallyUsed(self):
        self.client.writeFile("aFile", "123456")
        self.client.checkin("yuvu")

        server2 = osmosiswrapper.Server()
        client = osmosiswrapper.Client(self.server, server2)
        try:
            client.checkout("yuvu")
        finally:
            client.clean()
            server2.exit()
Beispiel #2
0
 def test_CheckoutTwoRepositories_NearestHasADefectiveCopy(self):
     self.client.writeFile("aFile", "123456")
     self.client.checkin("yuvu")
     serverNear = osmosiswrapper.Server()
     client = osmosiswrapper.Client(serverNear, self.server)
     client.checkout("yuvu", putIfMissing=True)
     serverNear.injectMalformedObject("123456", "defective")
     os.unlink(os.path.join(client.path(), "aFile"))
     client.checkout("yuvu", putIfMissing=True)
     self.assertEquals(client.fileCount(), 1)
     self.assertEquals(client.readFile("aFile"), "123456")
Beispiel #3
0
    def test_checkoutWithBackupServer(self):
        self.client.writeFile("aFile", "123456")
        self.client.checkin("yuvu")

        server2 = osmosiswrapper.Server()
        client = osmosiswrapper.Client(server2, self.server)
        try:
            client.checkout("yuvu")
            self.assertEquals(client.listLabels(), [])
        finally:
            client.clean()
            server2.exit()
Beispiel #4
0
    def test_BugFix_TwoServers_LabelWithMoreCharactersExists(self):
        self.client.writeFile("aFile", "123456")
        self.client.checkin("yuvu")
        self.client.checkin("yuv")

        server2 = osmosiswrapper.Server()
        client = osmosiswrapper.Client(server2, self.server)
        try:
            client.checkout("yuvu", putIfMissing=True)
            client.checkout("yuv", putIfMissing=True)
        finally:
            client.clean()
            server2.exit()
Beispiel #5
0
    def test_BugFix_PutIfMissing_WhenDirListObjectAlreadyExist(self):
        self.client.writeFile("aFile", "123456")
        self.client.checkin("yuvu")

        server2 = osmosiswrapper.Server()
        client = osmosiswrapper.Client(server2, self.server)
        try:
            client.checkout("yuvu", putIfMissing=True)
            self.assertEquals(client.listLabels(), ["yuvu"])
            client.eraseLabel("yuvu")
            client.checkout("yuvu", putIfMissing=True)
        finally:
            client.clean()
            server2.exit()
Beispiel #6
0
 def test_DirlistContainsSameObjectSeveralTimes(self):
     for i in xrange(100):
         self.client.writeFile("aFile%d" % i, "123456")
     self.client.checkin("yuvu")
     self.client.checkin("yuvu2")
     server = osmosiswrapper.Server()
     try:
         self.client.transfer("yuvu", server)
         self.client.transfer("yuvu2", server)
     except:
         logging.error("Destination server log:\n%(log)s", dict(log=server.readLog()))
         raise
     finally:
         server.exit()
Beispiel #7
0
    def test_BugFix_TransferBetweenObjectStores_ALabelAlreadyExistsWithMoreCharacters(self):
        self.client.writeFile("firstFile", "123456")
        self.client.checkin("yuvu")
        self.client.checkin("yuv")

        server = osmosiswrapper.Server()
        try:
            self.client.transfer("yuvu", server)
            self.client.transfer("yuv", server)
        except:
            logging.error("Destination server log:\n%(log)s", dict(log=server.readLog()))
            raise
        finally:
            server.exit()
Beispiel #8
0
    def test_TransferBetweenObjectStores(self):
        self.client.writeFile("firstFile", "123456")
        self.client.checkin("yuvu")
        os.unlink(self.client.abspath("firstFile"))

        server = osmosiswrapper.Server()
        try:
            self.client.transfer("yuvu", server)
            client = osmosiswrapper.Client(server)
            try:
                client.checkout("yuvu")
                self.assertEquals(client.fileCount(), 1)
                self.assertEquals(client.readFile("firstFile"), "123456")
            finally:
                client.clean()
        except:
            logging.error("Destination server log:\n%(log)s", dict(log=server.readLog()))
            raise
        finally:
            server.exit()
Beispiel #9
0
    def test_ChainTouchVSNoChainTouch(self):
        self.client.writeFile("aFile", "123456")
        self.client.checkin("yuvu")
        eventsBefore = self.server.labelLog()

        server2 = osmosiswrapper.Server()
        client = osmosiswrapper.Client(server2, self.server)
        try:
            client.checkout("yuvu", noChainTouch=True, putIfMissing=True)
            eventsAfter = self.server.labelLog()
            self.assertLess(len(eventsBefore), len(eventsAfter))

            client.checkout("yuvu", noChainTouch=True)
            eventsAfter2 = self.server.labelLog()
            self.assertEquals(eventsAfter2, eventsAfter)

            client.checkout("yuvu")
            eventsAfter3 = self.server.labelLog()
            self.assertLess(len(eventsAfter2), len(eventsAfter3))
        finally:
            client.clean()
            server2.exit()
Beispiel #10
0
 def setUp(self):
     self.server = osmosiswrapper.Server()
     self.client = osmosiswrapper.Client(self.server)
Beispiel #11
0
 def setUp(self):
     self.server = osmosiswrapper.Server()
     self.client = osmosiswrapper.Client(self.server)
     self.localObjectStore = tempfile.mkdtemp()
Beispiel #12
0
 def setUp(self):
     self.server = osmosiswrapper.Server()
     self.client = osmosiswrapper.Client(self.server)
     self.broadcastServer = osmosiswrapper.BroadcastServer(
         rootPath=self.server.path)
     self.client.setBroadcastServerPort(port=self.broadcastServer.port())