[Erp5-report] r24909 - /erp5/trunk/products/ERP5OOo/tests/testOOoImport.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Dec 16 17:08:43 CET 2008


Author: jerome
Date: Tue Dec 16 17:08:43 2008
New Revision: 24909

URL: http://svn.erp5.org?rev=24909&view=rev
Log:
update test for new Base_getCategoriesSpreadSheetMapping parameter for error
reporting

Modified:
    erp5/trunk/products/ERP5OOo/tests/testOOoImport.py

Modified: erp5/trunk/products/ERP5OOo/tests/testOOoImport.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5OOo/tests/testOOoImport.py?rev=24909&r1=24908&r2=24909&view=diff
==============================================================================
--- erp5/trunk/products/ERP5OOo/tests/testOOoImport.py [utf8] (original)
+++ erp5/trunk/products/ERP5OOo/tests/testOOoImport.py [utf8] Tue Dec 16 17:08:43 2008
@@ -304,19 +304,35 @@
     self.assertEquals(['france'], list(region.europe.france.europe.objectIds()))
     self.assertEquals([], list(region.europe.france.europe.france.objectIds()))
 
-  def test_CategoryTool_importCategoryFile_DuplicateIdsAtSameLevel(self):
-    # tests CategoryTool_importCategoryFile when a document contain same
+  def test_Base_getCategoriesSpreadSheetMapping_DuplicateIdsAtSameLevel(self):
+    # tests Base_getCategoriesSpreadSheetMapping when a document contain same
     # categories ID at the same level, in that case, a ValueError is raised
     import_file = makeFileUpload(
         'import_region_category_duplicate_ids_same_level.sxc')
     try:
-      self.portal.portal_categories.CategoryTool_importCategoryFile(
+      self.portal.portal_categories.Base_getCategoriesSpreadSheetMapping(
              import_file=import_file)
     except ValueError, error:
       # 'france' is the duplicate ID in this spreadsheet
       self.assertTrue('france' in str(error), str(error))
     else:
       self.fail('ValueError not raised')
+    
+    # Base_getCategoriesSpreadSheetMapping performs checks on the spreadsheet,
+    # an "invalid spreadsheet" error handler can be provided, to report errors
+    # nicely.
+    message_list = []
+    def on_invalid_spreadsheet(message):
+      message_list.append(message)
+
+    import_file = makeFileUpload(
+        'import_region_category_duplicate_ids_same_level.sxc')
+    self.portal.portal_categories.Base_getCategoriesSpreadSheetMapping(import_file,
+         invalid_spreadsheet_error_handler=on_invalid_spreadsheet)
+    
+    self.assertEquals(1, len(message_list))
+    self.assertTrue('france' in str(message_list[0]))
+
 
   # simple OOoParser tests
   def test_getSpreadSheetMapping(self):




More information about the Erp5-report mailing list