예제 #1
0
    def test_list(self):
        client = clblob.client.Client(self.config)
        self.assertEquals([], client.list('010'))
        self.assertEquals([], client.list('010', checksum=False))

        info = client.put(NAME, 'test data')
        time.sleep(0.2)
        result = client.list('010', checksum=False)
        self.assertEquals(1, len(result))
        self.assertEquals(info['name'], result[0][0])
        self.assertEquals(info['modified'], result[0][1])
        self.assertEquals(info['deleted'], result[0][2])
        self.assertEquals(info['modified_deleted'], result[0][3])
        self.assertEquals(
            0,
            len(
                client.list('010',
                            modified_start=0,
                            modified_stop=1,
                            checksum=False)))
        self.assertEquals(
            1,
            len(
                client.list('010',
                            modified_start=0,
                            modified_stop=2**63 - 1,
                            checksum=False)))

        for count in xrange(20):
            modified = info['modified'] + count * (50000 << 32)
            client.put(str(count), str(count), modified=modified)
        time.sleep(0.2)
        self.assertNotEquals([], client.list('010'))
        self.assertNotEquals([], client.list('010', checksum=False))
예제 #2
0
 def test_sync_one(self):
     client = clblob.client.Client(self.config)
     for count in xrange(20):
         client.put(str(count), 'test')
     time.sleep(0.2)
     names = [info[0] for info in client.list('010', checksum=False)]
     self.servers['010'].stop()
     index = sqlite3.connect('test_blob/010/_index')
     index.execute('DELETE FROM blob WHERE name=?', (names[0],))
     index.commit()
     index.close()
     self.servers['010'].start()
     client.sync('010')
     time.sleep(0.2)
     found = False
     for name in client.list('010', checksum=False):
         if name[0] == names[0]:
             found = True
             break
     self.assertEquals(True, found)
예제 #3
0
 def test_sync_one(self):
     client = clblob.client.Client(self.config)
     for count in xrange(20):
         client.put(str(count), "test")
     time.sleep(0.2)
     names = [info[0] for info in client.list("010", checksum=False)]
     self.servers["010"].stop()
     index = sqlite3.connect("test_blob/010/_index")
     index.execute("DELETE FROM blob WHERE name=?", (names[0],))
     index.commit()
     index.close()
     self.servers["010"].start()
     client.sync("010")
     time.sleep(0.2)
     found = False
     for name in client.list("010", checksum=False):
         if name[0] == names[0]:
             found = True
             break
     self.assertEquals(True, found)
예제 #4
0
    def test_list(self):
        client = clblob.client.Client(self.config)
        self.assertEquals([], client.list("010"))
        self.assertEquals([], client.list("010", checksum=False))

        info = client.put(NAME, "test data")
        time.sleep(0.2)
        result = client.list("010", checksum=False)
        self.assertEquals(1, len(result))
        self.assertEquals(info["name"], result[0][0])
        self.assertEquals(info["modified"], result[0][1])
        self.assertEquals(info["deleted"], result[0][2])
        self.assertEquals(info["modified_deleted"], result[0][3])
        self.assertEquals(0, len(client.list("010", modified_start=0, modified_stop=1, checksum=False)))
        self.assertEquals(1, len(client.list("010", modified_start=0, modified_stop=2 ** 63 - 1, checksum=False)))

        for count in xrange(20):
            modified = info["modified"] + count * (50000 << 32)
            client.put(str(count), str(count), modified=modified)
        time.sleep(0.2)
        self.assertNotEquals([], client.list("010"))
        self.assertNotEquals([], client.list("010", checksum=False))