function testNewObjectReturnsEmptyCollection() { $user = new UserForTest(); $groups = $user->getGroups(); $groups->rewind(); $this->assertFalse($groups->valid()); }
protected function _initUser($groups = array()) { $user = new UserForTest(); $user->setFirstName('User' . mt_rand()); if (sizeof($groups)) { foreach ($groups as $group) { $user->getGroups()->add($group); } } return $user; }
function testImportWhereMany2ManyCollectionIsMixedArray() { $user1 = new UserForTest(); $user1->setFirstName('Bob'); $g1 = new GroupForTest(); $g1->setTitle('vp1'); $g2 = new GroupForTest(); $g2->setTitle('vp1'); $user1->addToGroups($g1); $user1->addToGroups($g2); $user1->save(); $source = array('first_name' => $user1->getFirstName(), 'groups' => array($g1->getId(), $g2)); $user2 = new UserForTest(); $user2->import($source); $this->assertEqual($user2->getFirstName(), $user1->getFirstName()); $this->assertEqual($user2->getGroups()->count(), 2); $this->assertEqual($user2->getGroups()->at(0)->getTitle(), $g1->getTitle()); $this->assertEqual($user2->getGroups()->at(1)->getTitle(), $g2->getTitle()); }