APICHANGE: changed the modulus offset to 1 to correctly order sets (from r103792)

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@112158 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Sam Minnee 2010-10-13 04:05:04 +00:00
parent 0b4e4428be
commit 0c81b2f997
2 changed files with 9 additions and 9 deletions

View File

@ -611,16 +611,16 @@ class ViewableData extends Object implements IteratorAggregate {
/** /**
* Returns the modulus of the numerical position of the item in the data set. * Returns the modulus of the numerical position of the item in the data set.
* The count starts from $startIndex, which defaults to 0. * The count starts from $startIndex, which defaults to 1.
* @param int $Mod The number to perform Mod operation to. * @param int $Mod The number to perform Mod operation to.
* @param int $startIndex Number to start count from. * @param int $startIndex Number to start count from.
* @return int * @return int
*/ */
public function Modulus($mod, $startIndex = 0) { public function Modulus($mod, $startIndex = 1) {
return ($this->iteratorPos + $startIndex) % $mod; return ($this->iteratorPos + $startIndex) % $mod;
} }
public function MultipleOf($factor, $offset = 0) { public function MultipleOf($factor, $offset = 1) {
return ($this->Modulus($factor, $offset) == 0); return ($this->Modulus($factor, $offset) == 0);
} }

View File

@ -108,7 +108,7 @@ class DataObjectSetTest extends SapphireTest {
public function testMultipleOf() { public function testMultipleOf() {
$comments = DataObject::get('PageComment', '', "\"ID\" ASC"); $comments = DataObject::get('PageComment', '', "\"ID\" ASC");
$commArr = $comments->toArray(); $commArr = $comments->toArray();
$multiplesOf3 = 0; $multiplesOf3 = 1;
foreach($comments as $comment) { foreach($comments as $comment) {
if($comment->MultipleOf(3)) { if($comment->MultipleOf(3)) {
@ -121,13 +121,13 @@ class DataObjectSetTest extends SapphireTest {
$this->assertEquals(3, $multiplesOf3); $this->assertEquals(3, $multiplesOf3);
$this->assertTrue($commArr[0]->IsMultipleOf3); $this->assertFalse($commArr[0]->IsMultipleOf3);
$this->assertFalse($commArr[1]->IsMultipleOf3); $this->assertFalse($commArr[1]->IsMultipleOf3);
$this->assertFalse($commArr[2]->IsMultipleOf3); $this->assertTrue($commArr[2]->IsMultipleOf3);
$this->assertTrue($commArr[3]->IsMultipleOf3); $this->assertFalse($commArr[3]->IsMultipleOf3);
$this->assertFalse($commArr[4]->IsMultipleOf3); $this->assertFalse($commArr[4]->IsMultipleOf3);
$this->assertFalse($commArr[5]->IsMultipleOf3); $this->assertTrue($commArr[5]->IsMultipleOf3);
$this->assertTrue($commArr[6]->IsMultipleOf3); $this->assertFalse($commArr[6]->IsMultipleOf3);
foreach($comments as $comment) { foreach($comments as $comment) {
if($comment->MultipleOf(3, 1)) { if($comment->MultipleOf(3, 1)) {