[Erp5-report] r32755 vincent - /erp5/trunk/products/ERP5Catalog/tests/testERP5Catalog.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Feb 18 12:00:27 CET 2010


Author: vincent
Date: Thu Feb 18 12:00:25 2010
New Revision: 32755

URL: http://svn.erp5.org?rev=32755&view=rev
Log:
Test from_expression support in catalog.countResults

Modified:
    erp5/trunk/products/ERP5Catalog/tests/testERP5Catalog.py

Modified: erp5/trunk/products/ERP5Catalog/tests/testERP5Catalog.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Catalog/tests/testERP5Catalog.py?rev=32755&r1=32754&r2=32755&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Catalog/tests/testERP5Catalog.py [utf8] (original)
+++ erp5/trunk/products/ERP5Catalog/tests/testERP5Catalog.py [utf8] Thu Feb 18 12:00:25 2010
@@ -3989,6 +3989,35 @@
     self.assertEquals([x.getTitle() for x in
                       folder_object_list], real_title_list)
 
+  def test_countResultsUsesFromExpression(self, quiet=quiet):
+    if not quiet:
+      message = 'countResults uses from_expression'
+      ZopeTestCase._print('\n%s ' % message)
+      LOG('Testing... ',0,message)
+
+    person_module = self.getPersonModule()
+    module_len = len(person_module)
+    if module_len == 0:
+      person = person_module.newContent(portal_type='Person')
+      module_len = len(person_module)
+    module_uid = person_module.getUid()
+
+    get_transaction().commit()
+    self.tic()
+    catalog = self.getCatalogTool()
+
+    # Test sanity checks
+    self.assertEqual(len(catalog.searchResults(parent_uid=module_uid)),
+      module_len)
+    self.assertEqual(catalog.countResults(parent_uid=module_uid)[0][0],
+      module_len)
+
+    self.assertEquals(catalog.countResults(from_expression={
+      'catalog': '(SELECT sub_catalog.* FROM catalog AS sub_catalog' \
+        ' WHERE sub_catalog.parent_uid=%i)' \
+        ' AS catalog' % (module_uid, ),
+    })[0][0], module_len)
+
 def test_suite():
   suite = unittest.TestSuite()
   suite.addTest(unittest.makeSuite(TestERP5Catalog))




More information about the Erp5-report mailing list