summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsource4/scripting/swig/torture/pytorture20
-rw-r--r--source4/scripting/swig/torture/spoolss.py24
2 files changed, 41 insertions, 3 deletions
diff --git a/source4/scripting/swig/torture/pytorture b/source4/scripting/swig/torture/pytorture
index 89ecfbabcf..8a8f4d8bdf 100755
--- a/source4/scripting/swig/torture/pytorture
+++ b/source4/scripting/swig/torture/pytorture
@@ -1,5 +1,6 @@
#!/usr/bin/python
+import sys
from optparse import OptionParser
# Parse command line
@@ -31,7 +32,20 @@ domain = options.domain
username = options.username
password = options.password
-# Run tests
+if len(args) == 0:
+ parser.error('You must supply the name of a module to test')
-import samr
-samr.runtests(binding, domain, username, password)
+# Import and test
+
+for test in args:
+
+ try:
+ module = __import__(test)
+ except ImportError:
+ print 'No such module "%s"' % test
+ sys.exit(1)
+
+ if not hasattr(module, 'runtests'):
+ print 'Module "%s" does not have a runtests function' % test
+
+ module.runtests(binding, domain, username, password)
diff --git a/source4/scripting/swig/torture/spoolss.py b/source4/scripting/swig/torture/spoolss.py
new file mode 100644
index 0000000000..78d573a7cd
--- /dev/null
+++ b/source4/scripting/swig/torture/spoolss.py
@@ -0,0 +1,24 @@
+import dcerpc
+
+def test_EnumPrinters(pipe):
+
+ r = {}
+ r['flags'] = 0x02
+ r['server'] = None
+ r['level'] = 1
+ r['buffer'] = 392 * '\x00'
+ r['buf_size'] = 392
+
+ result = dcerpc.spoolss_EnumPrinters(pipe, r)
+
+ print result
+
+def runtests(binding, domain, username, password):
+
+ print 'Testing SPOOLSS pipe'
+
+ pipe = dcerpc.pipe_connect(binding,
+ dcerpc.DCERPC_SPOOLSS_UUID, dcerpc.DCERPC_SPOOLSS_VERSION,
+ domain, username, password)
+
+ test_EnumPrinters(pipe)