Esempio n. 1
0
 def test_bulk_commit(self):
     d = DbDict('test', 'test')
     d.clear()
     with d.bulk_commit():
         for i in range(100):
             d[i] = i
     self.assertEqual(list(d.keys()), list(range(100)))
Esempio n. 2
0
 def test_len(self):
     d = DbDict(DB_NAME)
     d.clear()
     n = 5
     for i in range(n):
         d[i] = i
     self.assertEqual(len(d), n)
Esempio n. 3
0
 def test_bulk_commit(self):
     d = DbDict(DB_NAME, 'table')
     d.clear()
     n = 1000
     with d.bulk_commit():
         for i in range(n):
             d[i] = i
     self.assertEqual(list(d.keys()), list(range(n)))
Esempio n. 4
0
 def test_fast_save(self):
     d1 = DbDict(DB_NAME, fast_save=True)
     d2 = DbDict(DB_NAME, 'data2', fast_save=True)
     d1.clear()
     n = 1000
     for i in range(n):
         d1[i] = i
         d2[i * 2] = i
     # HACK if we will not sort, fast save can produce different order of records
     self.assertEqual(sorted(d1.keys()), list(range(n)))
     self.assertEqual(sorted(d2.values()), list(range(n)))
Esempio n. 5
0
    def test_del(self):
        d = DbDict(DB_NAME)
        d.clear()
        for i in range(5):
            d[i] = i
        del d[0]
        del d[1]
        del d[2]
        self.assertEqual(list(d.keys()), list(range(3, 5)))

        with self.assertRaises(KeyError):
            del d[0]
Esempio n. 6
0
    def test_switch_commit(self):
        d = DbDict(DB_NAME)
        d.clear()
        d[1] = 1
        d = DbDict(DB_NAME)
        self.assertIn(1, d)

        d.can_commit = False
        d[2] = 2

        d = DbDict(DB_NAME)
        self.assertNotIn(2, d)
        self.assert_(d.can_commit)
Esempio n. 7
0
    def test_switch_commit(self):
        d = DbDict('test')
        d.clear()
        d[1] = 1
        d = DbDict('test')
        self.assertIn(1, d)

        d.can_commit = False
        d[2] = 2
        self.assertEqual(d[2], 2)

        d = DbDict('test')
        self.assertNotIn(2, d)
        self.assert_(d.can_commit)
Esempio n. 8
0
 def test_str(self):
     d = DbDict(DB_NAME)
     d.clear()
     d[1] = 1
     d[2] = 2
     self.assertEqual(str(d), '{1: 1, 2: 2}')