$pager->init(); $t->is($pager->getNbResults(), 5, 'sfDoctrineFinderPager::getNbResults() return the total nb of results'); $t->is($pager->getLastPage(), 3, 'sfDoctrineFinderPager::getLastPage() return the total nb of pages'); $t->is($pager->getFirstIndice(), 3, 'sfDoctrineFinderPager::getFirstIndice() return offset of the first result of the page'); $articles = $pager->getResults(); $t->is(count($articles), 2, 'sfDoctrineFinderPager::getResults() return an array of max $maxPerPage results'); $t->is(@$articles[0]->getTitle(), 'tt3', 'sfDoctrineFinderPager::getResults() return an array of BaseObject instances'); $t->is(@$articles[1]->getTitle(), 'tt4', 'sfDoctrineFinderPager::getResults() return an array of BaseObject instances'); $pager = new sfDoctrineFinderPager('DArticle', 2); $pager->setPage(3); $pager->init(); $t->is($pager->getNbResults(), 5, 'sfDoctrineFinderPager::getNbResults() return the total nb of results'); $t->is($pager->getLastPage(), 3, 'sfDoctrineFinderPager::getLastPage() return the total nb of pages'); $t->is($pager->getFirstIndice(), 5, 'sfDoctrineFinderPager::getFirstIndice() return offset of the first result of the page'); $articles = $pager->getResults(); $t->is(count($articles), 1, 'sfDoctrineFinderPager::getResults() return an array of max $maxPerPage results'); $t->is(@$articles[0]->getTitle(), 't5', 'sfDoctrineFinderPager::getResults() return an array of BaseObject instances'); $pager = new sfDoctrineFinderPager('DArticle', 2); $finder = sfDoctrineFinder::from('DArticle')-> where('Title', 'foo')-> where('CategoryId', 1); $pager->setFinder($finder); $pager->init(); if (Doctrine::VERSION == '0.11.0') { $t->is($finder->getLatestQuery(), 'SELECT COUNT(DISTINCT d.id) AS num_results FROM d_article d WHERE (d.title = \'foo\' AND d.category_id = \'1\') GROUP BY d.id' , 'sfDoctrineFinderPager::init() issues a COUNT DISTINCT query with the correct WHERE conditions'); }