[Erp5-report] r26291 - in /erp5/trunk/products/ERP5OOo/tests: ./ test_document/

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Apr 6 14:19:58 CEST 2009


Author: romain
Date: Mon Apr  6 14:19:57 2009
New Revision: 26291

URL: http://svn.erp5.org?rev=26291&view=rev
Log:
Check that it's possible to contribute file with non ASCII characters in the
filename.

Added:
    erp5/trunk/products/ERP5OOo/tests/test_document/T&é@{T-en-002.doc   (with props)
Modified:
    erp5/trunk/products/ERP5OOo/tests/testIngestion.py

Modified: erp5/trunk/products/ERP5OOo/tests/testIngestion.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5OOo/tests/testIngestion.py?rev=26291&r1=26290&r2=26291&view=diff
==============================================================================
--- erp5/trunk/products/ERP5OOo/tests/testIngestion.py [utf8] (original)
+++ erp5/trunk/products/ERP5OOo/tests/testIngestion.py [utf8] Mon Apr  6 14:19:57 2009
@@ -47,8 +47,8 @@
 
 # test files' home
 TEST_FILES_HOME = os.path.join(os.path.dirname(__file__), 'test_document')
-FILE_NAME_REGULAR_EXPRESSION = "(?P<reference>[A-Z]{3,6})-(?P<language>[a-z]{2})-(?P<version>[0-9]{3})"
-REFERENCE_REGULAR_EXPRESSION = "(?P<reference>[A-Z]{3,6})(-(?P<language>[a-z]{2}))?(-(?P<version>[0-9]{3}))?"
+FILE_NAME_REGULAR_EXPRESSION = "(?P<reference>[A-Z&é@{]{3,7})-(?P<language>[a-z]{2})-(?P<version>[0-9]{3})"
+REFERENCE_REGULAR_EXPRESSION = "(?P<reference>[A-Z&é@{]{3,7})(-(?P<language>[a-z]{2}))?(-(?P<version>[0-9]{3}))?"
 
 def printAndLog(msg):
   """
@@ -655,6 +655,7 @@
     self.assertEquals(context.getReference(), 'TEST')
     self.assertEquals(context.getLanguage(), 'en')
     self.assertEquals(context.getVersion(), '002')
+    self.assertEquals(context.getSourceReference(), file_name)
 
   def stepCheckConvertedContent(self, sequence=None, sequence_list=None, **kw):
     """
@@ -1346,6 +1347,59 @@
                 ]
     self.playSequence(step_list, quiet)
 
+  def stepUploadTextFromContributionToolWithNonASCIIFilename(self, 
+                                 sequence=None, sequence_list=None, **kw):
+    """
+      Upload a file from contribution.
+    """
+    f = makeFileUpload('T&é@{T-en-002.doc')
+    document = self.portal.portal_contributions.newContent(file=f)
+    sequence.edit(document_id=document.getId())
+    get_transaction().commit()
+
+  def stepDiscoverFromFilenameWithNonASCIIFilename(self, 
+                                 sequence=None, sequence_list=None, **kw):
+    """
+      Upload a file using contribution tool. This should trigger metadata
+      discovery and we should have basic coordinates immediately,
+      from first stage.
+    """
+    context = self.getDocument(sequence.get('document_id'))
+    file_name = 'T&é@{T-en-002.doc'
+    # First make sure the regular expressions work
+    property_dict = context.getPropertyDictFromFileName(file_name)
+    self.assertEquals(property_dict['reference'], 'T&é@{T')
+    self.assertEquals(property_dict['language'], 'en')
+    self.assertEquals(property_dict['version'], '002')
+    # Then make sure content discover works
+    # XXX - This part must be extended
+    property_dict = context.getPropertyDictFromContent()
+    self.assertEquals(property_dict['title'], 'title')
+    self.assertEquals(property_dict['description'], 'comments')
+    self.assertEquals(property_dict['subject_list'], ['keywords'])
+    # Then make sure metadata discovery works
+    self.assertEquals(context.getReference(), 'T&é@{T')
+    self.assertEquals(context.getLanguage(), 'en')
+    self.assertEquals(context.getVersion(), '002')
+    self.assertEquals(context.getSourceReference(), file_name)
+
+  def test_13_UploadTextFromContributionToolWithNonASCIIFilename(self, 
+                                           quiet=QUIET, run=RUN_ALL_TEST):
+    """
+      Make sure that when upload file from contribution tool, it creates a new
+      document in document module. when reupload same filename file, then it
+      does not create a new document and update existing document.
+    """
+    if not run: return
+    if not quiet:
+      printAndLog('test_13_UploadTextFromContributionToolWithNonASCIIFilename')
+    step_list = [ 'stepCleanUp'
+                 ,'stepUploadTextFromContributionToolWithNonASCIIFilename'
+                 ,'stepTic'
+                 ,'stepDiscoverFromFilenameWithNonASCIIFilename'
+                ]
+    self.playSequence(step_list, quiet)
+
 # Missing tests
 """
     property_dict = context.getPropertyDictFromUserLogin()

Added: erp5/trunk/products/ERP5OOo/tests/test_document/T&é@{T-en-002.doc
URL: http://svn.erp5.org/erp5/trunk/products/ERP5OOo/tests/test_document/T%26%C3%A9%40%7BT-en-002.doc?rev=26291&view=auto
==============================================================================
Binary file - no diff available.

Propchange: erp5/trunk/products/ERP5OOo/tests/test_document/T&é@{T-en-002.doc
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream




More information about the Erp5-report mailing list