public function testPrebuildOneToManyMultiColumn() { fORMRelated::setOrderBys('User', 'FavoriteAlbum', array('album_id' => 'desc')); $set = fRecordSet::build('User'); $set->prebuildFavoriteAlbums(); ob_start(); fORMDatabase::retrieve()->enableDebugging(TRUE); foreach ($set as $user) { $primary_keys = $user->listFavoriteAlbums(); switch ($user->getUserId()) { case 1: $expected_primary_keys = array(array('email' => '*****@*****.**', 'album_id' => 7), array('email' => '*****@*****.**', 'album_id' => 4), array('email' => '*****@*****.**', 'album_id' => 3), array('email' => '*****@*****.**', 'album_id' => 2), array('email' => '*****@*****.**', 'album_id' => 1)); break; case 2: $expected_primary_keys = array(array('email' => '*****@*****.**', 'album_id' => 2)); break; case 3: $expected_primary_keys = array(); break; case 4: $expected_primary_keys = array(); break; } $this->assertEquals($expected_primary_keys, $primary_keys); } fORMDatabase::retrieve()->enableDebugging(FALSE); $output = ob_get_clean(); $this->assertEquals('', $output); }
public function testPrebuildOneToMany() { fORMRelated::setOrderBys('Flourish2Artist', 'Flourish2Album', array('album_id' => 'desc')); $set = fRecordSet::build('Flourish2Artist'); $set->prebuildFlourish2Albums(); ob_start(); fORMDatabase::retrieve()->enableDebugging(TRUE); foreach ($set as $artist) { $album_ids = $artist->listFlourish2Albums(); switch ($artist->getArtistId()) { case 1: $expected_album_ids = array(3, 2, 1); break; case 2: $expected_album_ids = array(5, 4); break; case 3: $expected_album_ids = array(6); break; } $this->assertEquals($expected_album_ids, $album_ids); } fORMDatabase::retrieve()->enableDebugging(FALSE); $output = ob_get_clean(); $this->assertEquals('', $output); }
protected function configure() { fORMRelated::setOrderBys($this, 'WpTesting_Model_Taxonomy', array(WP_DB_PREFIX . 'term_relationships.`term_order`' => 'asc')); }
/** * @dataProvider listManyToManyProvider */ public function testListManyToMany($user_id, $list) { fORMRelated::setOrderBys('User', 'Group', array('group_id' => 'asc'), 'users_groups'); $user = new User($user_id); $this->assertEquals($list, $user->listGroups('users_groups')); }
protected function configure() { fORMRelated::setOrderBys($this,'Subscription',array('subscriptions.subscription_id' => 'desc')); }
protected function configure() { fORMRelated::setOrderBys($this, 'WpTesting_Model_Answer', array(WPT_DB_PREFIX . 'answers.answer_sort' => 'asc', WPT_DB_PREFIX . 'answers.answer_id' => 'asc')); }