pytorch
1
2
3
4
5
6from caffe2.python import workspace7
8import os9import tempfile10import unittest11
12
13class TestDB(unittest.TestCase):14def setUp(self):15handle, self.file_name = tempfile.mkstemp()16os.close(handle)17self.data = [18(19"key{}".format(i).encode("ascii"),20"value{}".format(i).encode("ascii")21)22for i in range(1, 10)23]24
25def testSimple(self):26db = workspace.C.create_db(27"minidb", self.file_name, workspace.C.Mode.write)28
29for key, value in self.data:30transaction = db.new_transaction()31transaction.put(key, value)32del transaction33
34del db # should close DB35
36db = workspace.C.create_db(37"minidb", self.file_name, workspace.C.Mode.read)38cursor = db.new_cursor()39data = []40while cursor.valid():41data.append((cursor.key(), cursor.value()))42cursor.next() # noqa: B30543del cursor44
45db.close() # test explicit db closer46self.assertEqual(data, self.data)47