[Erp5-report] r14317 - /erp5/trunk/utils/oood/testOoodBasicOperations.py

nobody at svn.erp5.org nobody at svn.erp5.org
Wed May 2 18:39:56 CEST 2007


Author: bartek
Date: Wed May  2 18:39:55 2007
New Revision: 14317

URL: http://svn.erp5.org?rev=14317&view=rev
Log:
tests for filename handling

Modified:
    erp5/trunk/utils/oood/testOoodBasicOperations.py

Modified: erp5/trunk/utils/oood/testOoodBasicOperations.py
URL: http://svn.erp5.org/erp5/trunk/utils/oood/testOoodBasicOperations.py?rev=14317&r1=14316&r2=14317&view=diff
==============================================================================
--- erp5/trunk/utils/oood/testOoodBasicOperations.py (original)
+++ erp5/trunk/utils/oood/testOoodBasicOperations.py Wed May  2 18:39:55 2007
@@ -33,6 +33,7 @@
 """
 
 import sys, base64, unittest
+import re
 from xmlrpclib import *
 import config
 from oood_common import responseFactory, Request
@@ -70,6 +71,9 @@
 class TestFileOperations(unittest.TestCase):
 
   def testConvertDoc(self):
+    """
+      This test passes arguments the old way.
+    """
     data = open('doc/test.doc').read()
     res = sp.convert('test.doc', base64.encodestring(data))
     res = responseFactory(res)
@@ -81,7 +85,9 @@
     self.failUnless('doc' in extractExtensions(target_list))
 
   def testConvertXls(self):
-    # and try new interface
+    """
+      This test uses Request object with constructor.
+    """
     data = open('doc/test.xls').read()
     request = Request(filename='text.xls', data=data)
     res = sp.convert(request)
@@ -95,7 +101,9 @@
     self.failUnless('csv' in extractExtensions(target_list))
 
   def testConvertPpt(self):
-    # and try new interface another way
+    """
+      This test uses Request object setting attributes.
+    """
     data = open('doc/test.ppt').read()
     request = Request()
     request.filename = 'test.ppt'
@@ -119,6 +127,29 @@
     res = responseFactory(res)
     self.assertEqual(res.mime, 'application/pdf')
     open('doc/out/test.pdf', 'w').write(res.data)
+
+  def testPdfTextGenerationWithIllegalChars(self):
+    """
+      This tries to break xmlrpc protocol by putting illegal character in filename
+      (the Request class should fix it before proceeding).
+    """
+    data = open('doc/test.odt').read()
+    request = Request(filename='tê¿yci±¿y.odt', data=data, extension='pdf')
+    res = sp.generate(request)
+    self.assert_(res)
+
+  def testPdfTextGenerationWithNoFilename(self):
+    """
+      If filename was not given in the request, the server should produce its own
+      from random digits.
+    """
+    data = open('doc/test.odt').read()
+    request = Request(data=data, extension='pdf')
+    res = sp.generate(request)
+    self.assert_(res)
+    res = responseFactory(res)
+    print res
+    self.failUnless(re.match('.*\d{2}$', res.filename))
 
   def testPdfCalcGeneration(self):
     data = open('doc/test.ods').read()




More information about the Erp5-report mailing list