[Erp5-report] r25459 - /erp5/trunk/products/ERP5Type/tests/testFolderMigration.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Feb 5 16:33:19 CET 2009


Author: luke
Date: Thu Feb  5 16:32:51 2009
New Revision: 25459

URL: http://svn.erp5.org?rev=25459&view=rev
Log:
 - allow passing args and kwargs to local newContent
 - add test which is not setting _tree_list on folder by sideeffect of invoking getTreeIdList

Modified:
    erp5/trunk/products/ERP5Type/tests/testFolderMigration.py

Modified: erp5/trunk/products/ERP5Type/tests/testFolderMigration.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/tests/testFolderMigration.py?rev=25459&r1=25458&r2=25459&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/tests/testFolderMigration.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/tests/testFolderMigration.py [utf8] Thu Feb  5 16:32:51 2009
@@ -67,11 +67,11 @@
       self.tic()      
 
 
-    def newContent(self):
+    def newContent(self, *args, **kwargs):
       """
         Create an object in self.folder and return it.
       """
-      return self.folder.newContent(portal_type='Folder')
+      return self.folder.newContent(portal_type='Folder', *args, **kwargs)
     
     def test_01_folderIsBtree(self, quiet=0, run=1):
       """
@@ -371,6 +371,34 @@
       obj4 = self.newContent()
       self.assertEquals(obj4.getId().split('-')[0], date)
 
+    def test_09_migrateFolderCreateNewObjectAtOnce(self, quiet=0, run=1):
+      """
+      migrate folder from btree to hbtree, do not touch ids
+      """
+      if not run : return
+      # Create some objects
+      self.assertEquals(self.folder.getIdGenerator(), '')
+      self.assertEquals(len(self.folder), 0)
+      obj1 = self.newContent()
+      self.assertEquals(obj1.getId(), '1')
+      obj2 = self.newContent()
+      self.assertEquals(obj2.getId(), '2')
+      obj3 = self.newContent()
+      self.assertEquals(obj3.getId(), '3')
+      get_transaction().commit()
+      self.tic()      
+      # call migration script
+      self.folder.migrateToHBTree()
+      get_transaction().commit()
+      self.tic()
+      obj4 = self.newContent(id='BASE-123')
+      self.assertEquals(obj4.getId(), 'BASE-123')
+      self.assertEqual(len(self.folder.objectIds(base_id=None)), 3)
+      self.assertEqual(len(self.folder.objectValues()), 4)
+      self.assertEqual(len(self.folder.objectValues(base_id=None)), 3)
+      self.assertEqual(len(self.folder.objectIds(base_id='BASE')), 1)
+      self.assertEqual(len(self.folder.objectValues(base_id='BASE')), 1)
+      
 def test_suite():
   suite = unittest.TestSuite()
   suite.addTest(unittest.makeSuite(TestFolderMigration))




More information about the Erp5-report mailing list