1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-14 09:49:28 +03:00

r26587: Fix reading Samba 3 WINS database and initial work on group db, aliases and secrets.

(This used to be commit c7c4cf258a)
This commit is contained in:
Jelmer Vernooij
2007-12-24 13:04:33 -06:00
committed by Stefan Metzmacher
parent 6c9a2a3c52
commit 95b1f554b2
3 changed files with 196 additions and 40 deletions

View File

@ -18,7 +18,8 @@
#
import unittest
from samba.samba3 import GroupMappingDatabase, Registry, PolicyDatabase
from samba.samba3 import (GroupMappingDatabase, Registry, PolicyDatabase, SecretsDatabase, TdbSam,
WinsDatabase)
import os
DATADIR=os.path.join(os.path.dirname(__file__), "../../../../../testdata/samba3")
@ -59,3 +60,55 @@ class GroupsTestCase(unittest.TestCase):
def setUp(self):
self.groupdb = GroupMappingDatabase(os.path.join(DATADIR, "group_mapping.tdb"))
def tearDown(self):
self.groupdb.close()
def test_group_length(self):
self.assertEquals(13, len(list(self.groupdb.groupsids())))
def test_groupsids(self):
sids = list(self.groupdb.groupsids())
self.assertTrue("S-1-5-32-544" in sids)
def test_alias_length(self):
self.assertEquals(0, len(list(self.groupdb.aliases())))
class SecretsDbTestCase(unittest.TestCase):
def setUp(self):
self.secretsdb = SecretsDatabase(os.path.join(DATADIR, "secrets.tdb"))
def tearDown(self):
self.secretsdb.close()
def test_get_sid(self):
self.assertTrue(self.secretsdb.get_sid("BEDWYR") is not None)
class TdbSamTestCase(unittest.TestCase):
def setUp(self):
self.samdb = TdbSam(os.path.join(DATADIR, "passdb.tdb"))
def tearDown(self):
self.samdb.close()
def test_usernames(self):
self.assertEquals(3, len(list(self.samdb.usernames())))
class WinsDatabaseTestCase(unittest.TestCase):
def setUp(self):
self.winsdb = WinsDatabase(os.path.join(DATADIR, "wins.dat"))
def test_length(self):
self.assertEquals(22, len(self.winsdb))
def test_first_entry(self):
self.assertEqual((1124185120, ["192.168.1.5"], "64R"), self.winsdb["ADMINISTRATOR#03"])
def tearDown(self):
self.winsdb.close()
# FIXME: smbpasswd
# FIXME: idmapdb
# FIXME: Shares