Author: jelmer Date: 2007-09-26 02:06:26 +0000 (Wed, 26 Sep 2007) New Revision: 25344
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25344 Log: Add some simple tests that define the interface of the tdb python bindings. Added: branches/4.0-python/source/lib/tdb/python/ branches/4.0-python/source/lib/tdb/python/tests/ branches/4.0-python/source/lib/tdb/python/tests/simple.py Modified: branches/4.0-python/ Changeset: Property changes on: branches/4.0-python ___________________________________________________________________ Name: bzr:revision-info ...skipped... Name: bzr:file-ids ...skipped... Name: bzr:revision-id:v3-trunk0 ...skipped... Added: branches/4.0-python/source/lib/tdb/python/tests/simple.py =================================================================== --- branches/4.0-python/source/lib/tdb/python/tests/simple.py 2007-09-26 02:06:23 UTC (rev 25343) +++ branches/4.0-python/source/lib/tdb/python/tests/simple.py 2007-09-26 02:06:26 UTC (rev 25344) @@ -0,0 +1,84 @@ +#!/usr/bin/python +# Some simple tests for the Python bindings for TDB +# Note that this tests the interface of the Python bindings +# It does not test tdb itself. +# +# Copyright (C) 2007 Jelmer Vernooij <[EMAIL PROTECTED]> +# Published under the GNU LGPL +from tdb import Tdb +from unittest import TestCase + +class SimpleTdbTests(TestCase): + def setUp(self): + super(SimpleTdbTests, self).setUp() + self.tdb = Tdb("sometempfile") + + def test_lockall(self): + self.tdb.lockall() + + def test_max_dead(self): + self.tdb.max_dead = 20 + + def test_unlockall(self): + self.tdb.lock_all() + self.tdb.unlock_all() + + def test_lockall_read(self): + self.tdb.read_lock_all() + self.tdb.read_unlock_all() + + def test_reopen(self): + self.tdb.reopen() + + def test_set_logging_fn(self): + self.tdb.log_fn = lambda tdb, level, txt: "" + + def test_get_logging_fn(self): + self.tdb.log_fn + + def test_fetch(self): + self.tdb["bar"] = "foo" + self.tdb.reopen() + self.assertEquals("foo", self.tdb["bar"]) + + def test_delete(self): + self.tdb["bar"] = "foo" + del self.tdb["bar"] + self.assertIs(None, self.tdb["bar"]) + + def test_contains(self): + self.tdb["bla"] = "bloe" + self.assertTrue("bla" in self.tdb) + + def test_hash_size(self): + self.tdb.hash_size + + def test_map_size(self): + self.tdb.map_size + + def test_name(self): + self.tdb.name + + def test_iterator(self): + self.tdb["bla"] = 1 + self.tdb["brainslug"] = 2 + self.assertEquals(["bla", "brainslug"], list(self.tdb)) + + def test_items(self): + self.tdb["bla"] = 1 + self.tdb["brainslug"] = 2 + self.assertEquals([("bla", 1), ("brainslug", 2)], self.tdb.items()) + + def test_transaction_cancel(self): + self.tdb["bloe"] = 2 + self.tdb.transaction_start() + self.tdb["bloe"] = 1 + self.tdb.transaction_cancel() + self.assertEquals(2, self.tdb["bloe"]) + + def test_transaction_commit(self): + self.tdb["bloe"] = 2 + self.tdb.transaction_start() + self.tdb["bloe"] = 1 + self.tdb.transaction_commit() + self.assertEquals(1, self.tdb["bloe"])
