Move tests for ParamFile.
authorJelmer Vernooij <jelmer@samba.org>
Sun, 21 Dec 2008 15:39:17 +0000 (16:39 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Sun, 21 Dec 2008 15:39:17 +0000 (16:39 +0100)
source4/param/tests/bindings.py
source4/scripting/python/samba/provision.py
source4/scripting/python/samba/samba3.py
source4/scripting/python/samba/tests/samba3.py
source4/setup/provision

index d1d71e4485e50b1fd8aba6ea8525ba59f1cc2b4e..41a67f93fc8f2a0f414b139e594c7fa1b7a11fdd 100644 (file)
@@ -50,23 +50,3 @@ class LoadParmTestCase(unittest.TestCase):
         file = param.LoadParm()
         file.load_default()
 
-class ParamTestCase(unittest.TestCase):
-    def test_init(self):
-        file = param.ParamFile()
-        self.assertTrue(file is not None)
-
-    def test_add_section(self):
-        file = param.ParamFile()
-        file.add_section("global")
-        self.assertTrue(file["global"] is not None)
-
-    def test_set_param_string(self):
-        file = param.ParamFile()
-        file.add_section("global")
-        file.set_string("data", "bar")
-        self.assertEquals("bar", file.get_string("data"))
-
-    def test_get_section(self):
-        file = param.ParamFile()
-        self.assertEquals(None, file.get_section("unknown"))
-        self.assertRaises(KeyError, lambda: file["unknown"])
index 1da4e885f59291c4a588ef6d48e3763c567afa96..6b3c26a11a07ad70d9b7a7c9ea07f6a5c79915a0 100644 (file)
@@ -261,7 +261,7 @@ def provision_paths_from_lp(lp, dnsdomain):
 
     paths.netlogon = lp.get("path", "netlogon")
 
-    paths.smbconf = lp.configfile()
+    paths.smbconf = lp.configfile
 
     return paths
 
@@ -291,7 +291,7 @@ def guess_names(lp=None, hostname=None, domain=None, dnsdomain=None, serverrole=
 
     if lp.get("realm").upper() != realm:
         raise Exception("realm '%s' in %s must match chosen realm '%s'" %
-                        (lp.get("realm"), lp.configfile(), realm))
+                        (lp.get("realm"), lp.configfile, realm))
     
     dnsdomain = dnsdomain.lower()
 
index 083386a0c59a7bb5817b3fecb3a9eb4acc3f51e9..1dc90bfcf3e67c80d2e30464afd2fc5768b1f79a 100644 (file)
@@ -709,6 +709,18 @@ class ParamFile(object):
     def __getitem__(self, section):
         return self._sections[section]
 
+    def get_section(self, section):
+        return self._sections.get(section)
+
+    def add_section(self, section):
+        self._sections[self._sanitize_name(section)] = {}
+
+    def set_string(self, name, value):
+        self._sections["global"][name] = value
+
+    def get_string(self, name):
+        return self._sections["global"].get(name)
+
 
 class Samba3(object):
     """Samba 3 configuration and state data reader."""
index 95a9fc2b566be31439fba098faf241c65ece3317..71e08bdd7f4509f9843f8eaadee47bd1db9f8b38 100644 (file)
@@ -19,7 +19,7 @@
 
 import unittest
 from samba.samba3 import GroupMappingDatabase, Registry, PolicyDatabase, SecretsDatabase, TdbSam
-from samba.samba3 import WinsDatabase, SmbpasswdFile, ACB_NORMAL, IdmapDatabase, SAMUser
+from samba.samba3 import WinsDatabase, SmbpasswdFile, ACB_NORMAL, IdmapDatabase, SAMUser, ParamFile
 import os
 
 DATADIR=os.path.join(os.path.dirname(__file__), "../../../../../testdata/samba3")
@@ -208,3 +208,25 @@ class ShareInfoTestCase(unittest.TestCase):
 
     def tearDown(self):
         self.shareinfodb.close()
+
+
+class ParamTestCase(unittest.TestCase):
+    def test_init(self):
+        file = ParamFile()
+        self.assertTrue(file is not None)
+
+    def test_add_section(self):
+        file = ParamFile()
+        file.add_section("global")
+        self.assertTrue(file["global"] is not None)
+
+    def test_set_param_string(self):
+        file = ParamFile()
+        file.add_section("global")
+        file.set_string("data", "bar")
+        self.assertEquals("bar", file.get_string("data"))
+
+    def test_get_section(self):
+        file = ParamFile()
+        self.assertEquals(None, file.get_section("unknown"))
+        self.assertRaises(KeyError, lambda: file["unknown"])
index 68f5d4fac7d48974ebefb5609eb18074ca0fe28f..c6b3491cdb29b9441302c53ae541d7ab90947e86 100755 (executable)
@@ -140,7 +140,7 @@ if opts.interactive:
                        break
 
 lp = sambaopts.get_loadparm()
-smbconf = lp.configfile()
+smbconf = lp.configfile
 
 if opts.aci is not None:
        print "set ACI: %s" % opts.aci