diff options
Diffstat (limited to 'source4/scripting/swig')
-rwxr-xr-x | source4/scripting/swig/torture/pytorture | 20 | ||||
-rw-r--r-- | source4/scripting/swig/torture/spoolss.py | 24 |
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) |