summaryrefslogtreecommitdiffstats
path: root/source4/scripting/python/samba/tests
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2007-12-19 23:27:31 +0100
committerStefan Metzmacher <metze@samba.org>2007-12-21 05:51:56 +0100
commit86f91db7d5c84526b3fbd4369d7a56dc0f057b4c (patch)
tree276fae99b2d92b8fb0f688ac8f04da3d216804fb /source4/scripting/python/samba/tests
parent595ec370da471116b35464dc65d2962f28380d74 (diff)
downloadsamba-86f91db7d5c84526b3fbd4369d7a56dc0f057b4c.tar.gz
samba-86f91db7d5c84526b3fbd4369d7a56dc0f057b4c.tar.xz
samba-86f91db7d5c84526b3fbd4369d7a56dc0f057b4c.zip
r26536: More tests for provisioning code.
(This used to be commit 43c8bfeedf06ce806c524a28fa72c643f6db60f4)
Diffstat (limited to 'source4/scripting/python/samba/tests')
-rw-r--r--source4/scripting/python/samba/tests/__init__.py18
-rw-r--r--source4/scripting/python/samba/tests/provision.py17
2 files changed, 31 insertions, 4 deletions
diff --git a/source4/scripting/python/samba/tests/__init__.py b/source4/scripting/python/samba/tests/__init__.py
index 08084699072..45588ecb5a4 100644
--- a/source4/scripting/python/samba/tests/__init__.py
+++ b/source4/scripting/python/samba/tests/__init__.py
@@ -20,6 +20,7 @@
import os
import ldb
import samba
+import tempfile
import unittest
class LdbTestCase(unittest.TestCase):
@@ -35,6 +36,15 @@ class LdbTestCase(unittest.TestCase):
self.ldb = samba.Ldb(self.filename)
+class TestCaseInTempDir(unittest.TestCase):
+ def setUp(self):
+ super(TestCaseInTempDir, self).setUp()
+ self.tempdir = tempfile.mkdtemp()
+
+ def tearDown(self):
+ super(TestCaseInTempDir, self).tearDown()
+
+
class SubstituteVarTestCase(unittest.TestCase):
def test_empty(self):
self.assertEquals("", samba.substitute_var("", {}))
@@ -52,3 +62,11 @@ class SubstituteVarTestCase(unittest.TestCase):
def test_unknown_var(self):
self.assertEquals("foo ${bla} gsff",
samba.substitute_var("foo ${bla} gsff", {"bar": "bla"}))
+
+
+class LdbExtensionTests(TestCaseInTempDir):
+ def test_searchone(self):
+ l = samba.Ldb(self.tempdir + "/searchone.ldb")
+ l.add({"dn": ldb.Dn(l, "foo=dc"), "bar": "bla"})
+ self.assertEquals("bla", l.searchone(ldb.Dn(l, "foo=dc"), "bar"))
+
diff --git a/source4/scripting/python/samba/tests/provision.py b/source4/scripting/python/samba/tests/provision.py
index 5edfe79084a..c8bd99283b7 100644
--- a/source4/scripting/python/samba/tests/provision.py
+++ b/source4/scripting/python/samba/tests/provision.py
@@ -17,13 +17,22 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-import unittest
-import samba.provision
+import os
+from samba.provision import setup_secretsdb
+import samba.tests
+from ldb import Dn
-class ProvisionTestCase(unittest.TestCase):
+setup_dir = "setup"
+
+class ProvisionTestCase(samba.tests.TestCaseInTempDir):
def test_setup_secretsdb(self):
- raise NotImplementedError(self.test_setup_secretsdb)
+ ldb = setup_secretsdb(os.path.join(self.tempdir, "secrets.ldb"),
+ setup_dir, None, None, None)
+ self.assertEquals("LSA Secrets",
+ ldb.searchone(Dn(ldb, "CN=LSA Secrets"), "CN"))
+
+class Disabled:
def test_setup_templatesdb(self):
raise NotImplementedError(self.test_setup_templatesdb)