summaryrefslogtreecommitdiff
path: root/source4/scripting/python
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2010-09-22 12:52:29 -0700
committerJelmer Vernooij <jelmer@samba.org>2010-09-22 17:48:23 -0700
commit5a75fb194a290cb09fc03312262bd57196e86cb9 (patch)
treeefe5704fe4efb1d60f923b853a1fdac599f6abf1 /source4/scripting/python
parent18f10eec0ea55108e97da019f07a18b8854c2883 (diff)
downloadsamba-5a75fb194a290cb09fc03312262bd57196e86cb9.tar.gz
samba-5a75fb194a290cb09fc03312262bd57196e86cb9.tar.bz2
samba-5a75fb194a290cb09fc03312262bd57196e86cb9.zip
ndrdump: Move blackbox test to standard python namespace.
Diffstat (limited to 'source4/scripting/python')
-rw-r--r--source4/scripting/python/samba/tests/__init__.py13
-rw-r--r--source4/scripting/python/samba/tests/blackbox/__init__.py0
-rwxr-xr-xsource4/scripting/python/samba/tests/blackbox/ndrdump.py28
3 files changed, 41 insertions, 0 deletions
diff --git a/source4/scripting/python/samba/tests/__init__.py b/source4/scripting/python/samba/tests/__init__.py
index cee3397ba6..9644bad4cf 100644
--- a/source4/scripting/python/samba/tests/__init__.py
+++ b/source4/scripting/python/samba/tests/__init__.py
@@ -23,6 +23,7 @@ import os
import ldb
import samba
from samba import param
+import subprocess
import tempfile
# Other modules import these two classes from here, for convenience:
@@ -128,3 +129,15 @@ class ValidNetbiosNameTests(TestCase):
def test_invalid_characters(self):
self.assertFalse(samba.valid_netbios_name("*BLA"))
+
+
+class BlackboxTestCase(TestCase):
+ """Base test case for blackbox tests."""
+
+ def check_run(self, line):
+ bindir = os.path.abspath(os.path.join(os.path.dirname(__file__), "../../../../bin"))
+ parts = line.split(" ")
+ if os.path.exists(os.path.join(bindir, parts[0])):
+ parts[0] = os.path.join(bindir, parts[0])
+ line = " ".join(parts)
+ subprocess.check_call(line, shell=True)
diff --git a/source4/scripting/python/samba/tests/blackbox/__init__.py b/source4/scripting/python/samba/tests/blackbox/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/source4/scripting/python/samba/tests/blackbox/__init__.py
diff --git a/source4/scripting/python/samba/tests/blackbox/ndrdump.py b/source4/scripting/python/samba/tests/blackbox/ndrdump.py
new file mode 100755
index 0000000000..06c1b5c7d3
--- /dev/null
+++ b/source4/scripting/python/samba/tests/blackbox/ndrdump.py
@@ -0,0 +1,28 @@
+#!/usr/bin/python
+# Blackbox tests for masktest
+# Copyright (C) 2008 Andrew Tridgell
+# Copyright (C) 2008 Andrew Bartlett
+# based on test_smbclient.sh
+
+import os
+from samba.tests import BlackboxTestCase
+
+data_path_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), "../../../../../librpc/tests"))
+
+class NdrDumpTests(BlackboxTestCase):
+ """Blackbox tests for ndrdump."""
+
+ def data_path(self, name):
+ return os.path.join(data_path_dir, name)
+
+ def test_ndrdump_with_in(self):
+ self.check_run("ndrdump samr samr_CreateUser in %s" % (self.data_path("samr-CreateUser-in.dat")))
+
+ def test_ndrdump_with_out(self):
+ self.check_run("ndrdump samr samr_CreateUser out %s" % (self.data_path("samr-CreateUser-out.dat")))
+
+ def test_ndrdump_context_file(self):
+ self.check_run("ndrdump --context-file %s samr samr_CreateUser out %s" % (self.data_path("samr-CreateUser-in.dat"), self.data_path("samr-CreateUser-out.dat")))
+
+ def test_ndrdump_with_validate(self):
+ self.check_run("ndrdump --validate samr samr_CreateUser in %s" % (self.data_path("samr-CreateUser-in.dat")))