[Checkins] SVN: Products.ZCatalog/trunk/ Expand sort results / batching tests
Hanno Schlichting
hannosch at hannosch.eu
Tue Aug 23 04:47:13 EDT 2011
Log message for revision 122668:
Expand sort results / batching tests
Changed:
U Products.ZCatalog/trunk/CHANGES.txt
U Products.ZCatalog/trunk/src/Products/ZCatalog/tests/test_catalog.py
-=-
Modified: Products.ZCatalog/trunk/CHANGES.txt
===================================================================
--- Products.ZCatalog/trunk/CHANGES.txt 2011-08-23 08:31:24 UTC (rev 122667)
+++ Products.ZCatalog/trunk/CHANGES.txt 2011-08-23 08:47:12 UTC (rev 122668)
@@ -4,7 +4,7 @@
2.13.20 (unreleased)
--------------------
-- Fixed incorrect calculation of batches in the second half of the resultset
+- Fixed incorrect calculation of batches in the second half of the result set
in sortResults.
2.13.19 (2011-08-20)
Modified: Products.ZCatalog/trunk/src/Products/ZCatalog/tests/test_catalog.py
===================================================================
--- Products.ZCatalog/trunk/src/Products/ZCatalog/tests/test_catalog.py 2011-08-23 08:31:24 UTC (rev 122667)
+++ Products.ZCatalog/trunk/src/Products/ZCatalog/tests/test_catalog.py 2011-08-23 08:47:12 UTC (rev 122668)
@@ -349,30 +349,54 @@
self.assertEqual(a.actual_result_count, self.upper)
self.assertEqual(a[0].num, self.upper - 1)
+ def testSortLimitViaBatchingArgsBeforeStart(self):
+ query = dict(att1='att1', sort_on='num', b_start=-5, b_size=8)
+ result = self._catalog(query)
+ self.assertEqual(result.actual_result_count, 100)
+ self.assertEqual([r.num for r in result], range(0, 3))
+
def testSortLimitViaBatchingArgsStart(self):
query = dict(att1='att1', sort_on='num', b_start=0, b_size=5)
result = self._catalog(query)
self.assertEqual(result.actual_result_count, 100)
- self.assertEqual([r.num for r in result], range(5))
+ self.assertEqual([r.num for r in result], range(0, 5))
- def testSortLimitViaBatchingArgsMiddle(self):
+ def testSortLimitViaBatchingEarlyFirstHalf(self):
query = dict(att1='att1', sort_on='num', b_start=11, b_size=17)
result = self._catalog(query)
self.assertEqual(result.actual_result_count, 100)
self.assertEqual([r.num for r in result], range(11, 28))
- def testSortLimitViaBatchingArgsSecondHalf(self):
- query = dict(att1='att1', sort_on='num', b_start=70, b_size=15)
+ def testSortLimitViaBatchingArgsLateFirstHalf(self):
+ query = dict(att1='att1', sort_on='num', b_start=30, b_size=15)
result = self._catalog(query)
self.assertEqual(result.actual_result_count, 100)
- self.assertEqual([r.num for r in result], range(70, 85))
-
+ self.assertEqual([r.num for r in result], range(30, 45))
+
+ def testSortLimitViaBatchingArgsLeftMiddle(self):
+ query = dict(att1='att1', sort_on='num', b_start=45, b_size=8)
+ result = self._catalog(query)
+ self.assertEqual(result.actual_result_count, 100)
+ self.assertEqual([r.num for r in result], range(45, 53))
+
+ def testSortLimitViaBatchingArgsRightMiddle(self):
+ query = dict(att1='att1', sort_on='num', b_start=48, b_size=8)
+ result = self._catalog(query)
+ self.assertEqual(result.actual_result_count, 100)
+ self.assertEqual([r.num for r in result], range(48, 56))
+
def testSortLimitViaBatchingArgsEarlySecondHalf(self):
query = dict(att1='att1', sort_on='num', b_start=55, b_size=15)
result = self._catalog(query)
self.assertEqual(result.actual_result_count, 100)
self.assertEqual([r.num for r in result], range(55, 70))
+ def testSortLimitViaBatchingArgsSecondHalf(self):
+ query = dict(att1='att1', sort_on='num', b_start=70, b_size=15)
+ result = self._catalog(query)
+ self.assertEqual(result.actual_result_count, 100)
+ self.assertEqual([r.num for r in result], range(70, 85))
+
def testSortLimitViaBatchingArgsEnd(self):
query = dict(att1='att1', sort_on='num', b_start=90, b_size=10)
result = self._catalog(query)
More information about the checkins
mailing list