svn commit: samba r3430 - in branches/SAMBA_4_0/source/scripting/swig/torture: .

tpot at samba.org tpot at samba.org
Mon Nov 1 11:51:36 GMT 2004


Author: tpot
Date: 2004-11-01 11:51:35 +0000 (Mon, 01 Nov 2004)
New Revision: 3430

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=3430

Log:
Add tests for EnumPrinterDataEx, SetPrinterDataEx (doesn't work),
EnumPrinterDrivers.

Modified:
   branches/SAMBA_4_0/source/scripting/swig/torture/spoolss.py


Changeset:
Modified: branches/SAMBA_4_0/source/scripting/swig/torture/spoolss.py
===================================================================
--- branches/SAMBA_4_0/source/scripting/swig/torture/spoolss.py	2004-11-01 11:34:54 UTC (rev 3429)
+++ branches/SAMBA_4_0/source/scripting/swig/torture/spoolss.py	2004-11-01 11:51:35 UTC (rev 3430)
@@ -21,7 +21,7 @@
 
 def test_OpenPrinterEx(pipe, printer):
 
-    print 'testing spoolss_OpenPrinterEx(%s)' % printer
+    print 'spoolss_OpenPrinterEx(%s)' % printer
 
     printername = '\\\\%s' % dcerpc.dcerpc_server_name(pipe)
     
@@ -66,7 +66,7 @@
 
     for level in [0, 1, 2, 3, 4, 5, 6, 7]:
 
-        print 'test_GetPrinter(level = %d)' % level
+        print 'spoolss_GetPrinter(level = %d)' % level
 
         r['level'] = level
         r['buffer'] = None
@@ -77,7 +77,7 @@
 
 def test_EnumForms(pipe, handle):
 
-    print 'testing spoolss_EnumForms'
+    print 'spoolss_EnumForms()'
 
     r = {}
     r['handle'] = handle
@@ -102,7 +102,7 @@
 
 def test_EnumPorts(pipe, handle):
 
-    print 'testing spoolss_EnumPorts'
+    print 'spoolss_EnumPorts()'
 
     r = {}
     r['handle'] = handle
@@ -136,7 +136,7 @@
 
 def test_SetForm(pipe, handle, form):
 
-    print 'testing spoolss_SetForm'
+    print 'spoolss_SetForm()'
 
     r = {}
     r['handle'] = handle
@@ -156,7 +156,7 @@
 
 def test_AddForm(pipe, handle):
 
-    print 'testing spoolss_AddForm'
+    print 'spoolss_AddForm()'
 
     formname = '__testform__'
 
@@ -197,7 +197,7 @@
 
 def test_EnumJobs(pipe, handle):
 
-    print 'testing spoolss_EnumJobs'
+    print 'spoolss_EnumJobs()'
 
     r = {}
     r['handle'] = handle
@@ -232,7 +232,7 @@
 
 def test_EnumPrinterData(pipe, handle):
 
-    print 'test_EnumPrinterData'
+    print 'test_EnumPrinterData()'
 
     enum_index = 0
 
@@ -268,9 +268,42 @@
         enum_index += 1
 
 
+def test_SetPrinterDataEx(pipe, handle):
+
+    valuename = '__printerdataextest__'
+    data = '12345'
+
+    r = {}
+    r['handle'] = handle
+    r['key_name'] = 'DsSpooler'
+    r['value_name'] = valuename
+    r['type'] = 3
+    r['buffer'] = data
+    r['buf_size'] = len(data)
+    
+    result = dcerpc.spoolss_SetPrinterDataEx(pipe, r)
+
+
+def test_EnumPrinterDataEx(pipe, handle):
+
+    r = {}
+    r['handle'] = handle
+    r['key_name'] = 'DsSpooler'
+    r['buf_size'] = 0
+
+    result = dcerpc.spoolss_EnumPrinterDataEx(pipe, r)
+
+    if result['result'] == dcerpc.WERR_MORE_DATA:
+        r['buf_size'] = result['buf_size']
+
+        result = dcerpc.spoolss_EnumPrinterDataEx(pipe, r)
+
+    # TODO: test spoolss_GetPrinterDataEx()
+
+
 def test_SetPrinterData(pipe, handle):
 
-    print 'testing spoolss_SetPrinterData'
+    print 'testing spoolss_SetPrinterData()'
 
     valuename = '__printerdatatest__'
     data = '12345'
@@ -299,7 +332,7 @@
 
 def test_EnumPrinters(pipe):
 
-    print 'testing spoolss_EnumPrinters'
+    print 'testing spoolss_EnumPrinters()'
 
     printer_names = None
 
@@ -348,10 +381,31 @@
         test_AddForm(pipe, handle)
         test_EnumJobs(pipe, handle)
         test_EnumPrinterData(pipe, handle)
+        test_EnumPrinterDataEx(pipe, handle)
         test_SetPrinterData(pipe, handle)
+#       test_SetPrinterDataEx(pipe, handle)
         test_ClosePrinter(pipe, handle)
 
 
+def test_EnumPrinterDrivers(pipe):
+
+    print 'test spoolss_EnumPrinterDrivers()'
+
+    for level in [1, 2, 3]:
+
+        r = {}
+        r['server'] = None
+        r['environment'] = None
+        r['level'] = level
+
+        result = ResizeBufferCall(dcerpc.spoolss_EnumPrinterDrivers, pipe, r)
+
+        for driver in dcerpc.unmarshall_spoolss_DriverInfo_array(
+            result['buffer'], r['level'], result['count']):
+
+            print driver
+
+
 def test_PrintServer(pipe):
     
     handle = test_OpenPrinterEx(pipe, None)
@@ -370,4 +424,5 @@
             domain, username, password)
 
     test_EnumPrinters(pipe)
+    test_EnumPrinterDrivers(pipe)
     test_PrintServer(pipe)



More information about the samba-cvs mailing list