diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2007-12-24 14:16:40 -0600 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2007-12-26 11:57:06 -0600 |
commit | 8ada900ee67fc8e1a1ff94c9e5f7a50752d11017 (patch) | |
tree | 430042a6eb3b786bfc94942c2f26284c41b223ab /source4/scripting/python/samba/tests/samba3.py | |
parent | a6caca9abcf4de57901ba8ecc610cf8c13cd2821 (diff) | |
download | samba-8ada900ee67fc8e1a1ff94c9e5f7a50752d11017.tar.gz samba-8ada900ee67fc8e1a1ff94c9e5f7a50752d11017.tar.xz samba-8ada900ee67fc8e1a1ff94c9e5f7a50752d11017.zip |
r26590: Parsing routines for the smbpasswd file and idmap database.
(This used to be commit 0c14e16a2bc965d3319ca990089566bff98a47fe)
Diffstat (limited to 'source4/scripting/python/samba/tests/samba3.py')
-rw-r--r-- | source4/scripting/python/samba/tests/samba3.py | 53 |
1 files changed, 49 insertions, 4 deletions
diff --git a/source4/scripting/python/samba/tests/samba3.py b/source4/scripting/python/samba/tests/samba3.py index 92d11d11d44..580bcfa3c20 100644 --- a/source4/scripting/python/samba/tests/samba3.py +++ b/source4/scripting/python/samba/tests/samba3.py @@ -19,7 +19,7 @@ import unittest from samba.samba3 import (GroupMappingDatabase, Registry, PolicyDatabase, SecretsDatabase, TdbSam, - WinsDatabase) + WinsDatabase, SmbpasswdFile, ACB_NORMAL, IdmapDatabase) import os DATADIR=os.path.join(os.path.dirname(__file__), "../../../../../testdata/samba3") @@ -109,6 +109,51 @@ class WinsDatabaseTestCase(unittest.TestCase): def tearDown(self): self.winsdb.close() -# FIXME: smbpasswd -# FIXME: idmapdb -# FIXME: Shares +class SmbpasswdTestCase(unittest.TestCase): + def setUp(self): + self.samdb = SmbpasswdFile(os.path.join(DATADIR, "smbpasswd")) + + def test_length(self): + self.assertEquals(3, len(self.samdb)) + + def test_get_user(self): + self.assertEquals((0, "552902031BEDE9EFAAD3B435B51404EE", "878D8014606CDA29677A44EFA1353FC7", ACB_NORMAL, int(1125418267)), self.samdb["rootpw"]) + + def tearDown(self): + self.samdb.close() + + +class IdmapDbTestCase(unittest.TestCase): + def setUp(self): + self.idmapdb = IdmapDatabase(os.path.join(DATADIR, "winbindd_idmap.tdb")) + + def test_user_hwm(self): + self.assertEquals(10000, self.idmapdb.get_user_hwm()) + + def test_group_hwm(self): + self.assertEquals(10002, self.idmapdb.get_group_hwm()) + + def test_uids(self): + self.assertEquals(1, len(list(self.idmapdb.uids()))) + + def test_gids(self): + self.assertEquals(3, len(list(self.idmapdb.gids()))) + + def test_get_user_sid(self): + self.assertEquals("S-1-5-21-58189338-3053988021-627566699-501", self.idmapdb.get_user_sid(65534)) + + def test_get_group_sid(self): + self.assertEquals("S-1-5-21-2447931902-1787058256-3961074038-3007", self.idmapdb.get_group_sid(10001)) + + def tearDown(self): + self.idmapdb.close() + + +class ShareInfoTestCase(unittest.TestCase): + def setUp(self): + self.shareinfodb = ShareInfoDatabase(os.path.join(DATADIR, "share_info.tdb")) + + # FIXME: needs proper data so it can be tested + + def tearDown(self): + self.shareinfodb.close() |