1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00
samba-mirror/python/samba/tests/param.py
Stefan Metzmacher 05d3a909d5 selftest: use 10.53.57.0/8 instead of 127.0.0.1/8
This makes our testing much more realistic and allows
the removal of some knowfail entries.

It also means the testing with network namespaces on Linux
can use the same addresses as our socket wrapper testing.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
2020-03-27 09:02:38 +00:00

108 lines
3.6 KiB
Python

# Unix SMB/CIFS implementation.
# Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2007
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""Tests for samba.param."""
from samba import param
import samba.tests
import os
class LoadParmTestCase(samba.tests.TestCaseInTempDir):
def setUp(self):
super(LoadParmTestCase, self).setUp()
self.tempf = os.path.join(self.tempdir, "test")
open(self.tempf, 'w').write("empty")
def tearDown(self):
os.unlink(self.tempf)
super(LoadParmTestCase, self).tearDown()
def test_init(self):
file = param.LoadParm()
self.assertTrue(file is not None)
def test_length(self):
file = param.LoadParm()
self.assertEqual(0, len(file))
def test_set_workgroup(self):
file = param.LoadParm()
file.set("workgroup", "bla")
self.assertEqual("BLA", file.get("workgroup"))
def test_is_mydomain(self):
file = param.LoadParm()
file.set("workgroup", "bla")
self.assertTrue(file.is_mydomain("BLA"))
self.assertFalse(file.is_mydomain("FOOBAR"))
def test_is_myname(self):
file = param.LoadParm()
file.set("netbios name", "bla")
self.assertTrue(file.is_myname("BLA"))
self.assertFalse(file.is_myname("FOOBAR"))
def test_load_default(self):
file = param.LoadParm()
file.load_default()
def test_section_nonexistent(self):
samba_lp = param.LoadParm()
samba_lp.load_default()
self.assertRaises(KeyError, samba_lp.__getitem__, "nonexistent")
def test_log_level(self):
samba_lp = param.LoadParm()
samba_lp.set("log level", "5 auth:4")
self.assertEqual(5, samba_lp.log_level())
def test_dump(self):
samba_lp = param.LoadParm()
# Just test successfull method execution (outputs to stdout)
self.assertEqual(None, samba_lp.dump())
def test_dump_to_file(self):
samba_lp = param.LoadParm()
self.assertEqual(None, samba_lp.dump(False, self.tempf))
content = open(self.tempf, 'r').read()
self.assertIn('[global]', content)
self.assertIn('interfaces', content)
def test_dump_a_parameter(self):
samba_lp = param.LoadParm()
samba_lp.load_default()
# Just test successfull method execution
self.assertEqual(None, samba_lp.dump_a_parameter('interfaces'))
def test_dump_a_parameter_to_file(self):
samba_lp = param.LoadParm()
samba_lp.load_default()
self.assertEqual(None,
samba_lp.dump_a_parameter('interfaces',
'global',
self.tempf))
content = open(self.tempf, 'r').read()
self.assertIn('10.53.57.', content)
def test_samdb_url(self):
samba_lp = param.LoadParm()
samdb_url = samba_lp.samdb_url()
self.assertTrue(samdb_url.startswith('tdb://'))
self.assertTrue(samdb_url.endswith('/sam.ldb'))