]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s4/selftest: Add simple python netbios test python2 only for the moment
authorNoel Power <noel.power@suse.com>
Thu, 15 Feb 2018 20:43:53 +0000 (20:43 +0000)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 23 Mar 2018 06:28:25 +0000 (07:28 +0100)
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
python/samba/tests/netbios.py [new file with mode: 0644]
source4/selftest/tests.py

diff --git a/python/samba/tests/netbios.py b/python/samba/tests/netbios.py
new file mode 100644 (file)
index 0000000..65ec5f1
--- /dev/null
@@ -0,0 +1,52 @@
+# -*- coding: utf-8 -*-
+# Unix SMB/CIFS implementation. Tests for netbios py module
+# Copyright (C) Noel Power <noel.power@suse.com> 2018
+#
+# 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/>.
+
+import samba, os, random, sys
+from samba import netbios
+
+class NetBiosTests(samba.tests.TestCase):
+    def setUp(self):
+        super(NetBiosTests, self).setUp()
+        self.n = netbios.Node()
+        self.ifc = os.environ["SERVER_IP"]
+        self.dc =  os.environ["DC_NETBIOSNAME"]
+    def tearDown(self):
+        super(NetBiosTests, self).tearDown()
+    def test_query_name(self):
+        (reply_from, names, addresses) = self.n.query_name(self.dc, self.ifc, timeout=4)
+        assert reply_from == self.ifc
+        assert names[0] == self.dc
+        assert addresses[0] == self.ifc
+
+    def test_name_status(self):
+        (reply_from, name, name_list) = self.n.name_status(self.dc, self.ifc, timeout=4)
+        assert reply_from == self.ifc
+        assert name[0] == self.dc
+        assert len(name_list) > 0
+
+    def test_register_name(self):
+        address = '127.0.0.3'
+        (reply_from, name, reply_address, code) = self.n.register_name((self.dc, 0x20), address, self.ifc, multi_homed=False, timeout=4)
+        assert reply_from == self.ifc
+        assert name[0] == self.dc
+        assert reply_address == address
+        assert code == 6
+
+    def disabled_test_refresh(self):
+        # can't get the below test to work, disabling
+        address = '127.0.0.3'
+        res = self.n.refresh_name((self.dc, 0x20), address, self.ifc, timeout=10)
index a305757e1fe6c96bf85f8cc8d58372011a226546..317350b8484b00fcc3460a2a9a80c52caff174df 100755 (executable)
@@ -616,6 +616,9 @@ planpythontestsuite("ad_dc:local", "samba.tests.samba_tool.sites")
 planpythontestsuite("ad_dc:local", "samba.tests.samba_tool.dnscmd")
 
 planpythontestsuite("ad_dc_ntvfs:local", "samba.tests.dcerpc.rpcecho")
+
+planoldpythontestsuite("nt4_dc", "samba.tests.netbios", extra_args=['-U"$USERNAME%$PASSWORD"'], py3_compatible=False)
+
 planoldpythontestsuite("ad_dc_ntvfs:local", "samba.tests.dcerpc.registry", extra_args=['-U"$USERNAME%$PASSWORD"'])
 planoldpythontestsuite("ad_dc_ntvfs", "samba.tests.dcerpc.dnsserver", extra_args=['-U"$USERNAME%$PASSWORD"'])
 planoldpythontestsuite("ad_dc", "samba.tests.dcerpc.dnsserver", extra_args=['-U"$USERNAME%$PASSWORD"'])