getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * request first recentest revision * (so skips first line which belongs to the current existing page) */ function test_requestlastrev() { $first = 0; $num = 1; $revsexpected = array($this->revsexpected[1]); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 20); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * request first recentest revision * (so skips first line which belongs to the current existing page) */ function test_requestonebutlastrev() { $first = 1; $num = 1; $revsexpected = array($this->revsexpected[2]); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 20); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * request first recentest revision * (so skips first line of current existing page) */ function test_requestrevswithoffset() { $first = 10; $num = 5; $revsexpected = array_slice($this->revsexpected, $first + 1, $num); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 20); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * first = -1 requests recentest logline, without skipping */ function test_requestrecentestlogline() { $first = -1; $num = 1; $revsexpected = array($this->revsexpected[0]); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * chunck size = 0 skips chuncked loading */ function test_wholefile() { $first = 0; $num = 1000; $revsexpected = array_slice($this->revsexpected, 1); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 0); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * Negative range returns no result */ function test_negativenum() { $first = 0; $num = -10; $revsexpected = array(); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * Negative range returns no result */ function test_negativennumoffset() { $first = 2; $num = -10; $revsexpected = array(); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * zero range returns no result */ function test_zeronum() { $first = 5; $num = 0; $revsexpected = array(); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 512); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * get oldest revisions */ function test_requestlargeoffset() { $first = 22; $num = 50; $revsexpected = array_slice($this->revsexpected, $first + 1); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } /** * request with too large offset and range */ function test_requesttoolargenumberrevs() { $first = 50; $num = 50; $revsexpected = array(); $pagelog = new PageChangeLog($this->pageid, $chunk_size = 8192); $revs = $pagelog->getRevisions($first, $num); $this->assertEquals($revsexpected, $revs); } }