30
30
from operator import attrgetter
32
from contrib.testing.testcase import BaseTwistedTestCase, MementoHandler
32
from contrib.testing.testcase import BaseTwistedTestCase
33
from ubuntuone.devtools.handlers import MementoHandler
33
34
from ubuntuone.syncdaemon.tritcask import (
592
593
self.assertEqual('foo1', key)
596
class HintEntryTest(BaseTestCase):
597
"""Tests for HintEntry class."""
599
def test_header_property(self):
600
"""Test the header property."""
602
entry = HintEntry(tstamp, len('foo'), 0, len('bar'), 100, 'foo')
603
self.assertEqual((entry.tstamp, entry.key_sz, entry.row_type,
604
entry.value_sz, entry.value_pos), entry.header)
595
607
class LowLevelTest(BaseTestCase):
596
608
"""Tests for low level methods and functions.
1065
1077
self.assertRaises(ValueError, self.db.delete, 0, u'foobar')
1066
1078
self.assertRaises(ValueError, self.db.delete, 0, object())
1080
def test_keys(self):
1081
"""Test for the keys() method."""
1083
key, data = self.build_data()
1084
self.db.put(0, key, data)
1085
key, data = self.build_data()
1086
self.db.put(0, key, data)
1087
self.assertEqual(self.db._keydir.keys(), self.db.keys())
1089
def test__contains__(self):
1090
"""Test for __contains__ method."""
1091
key, data = self.build_data()
1092
self.db.put(0, key, data)
1093
key1, data1 = self.build_data()
1094
self.db.put(0, key1, data1)
1095
self.assertTrue((0, key) in self.db._keydir)
1096
self.assertTrue((0, key) in self.db)
1097
self.assertTrue((0, key1) in self.db._keydir)
1098
self.assertTrue((0, key1) in self.db)
1069
1100
class MergeTests(BaseTestCase):