Exemplo n.º 1
0
 /**
  * Test the clearing of related object collection via a many-to-many association.
  * @link       http://www.propelorm.org/ticket/1374
  */
 public function testClearCrossFk()
 {
     $book = new Book();
     $bookClub = new BookClubList();
     $book->addBookClubList($bookClub);
     $this->assertEquals(1, count($book->getBookClubLists()));
     $book->clear();
     $this->assertEquals(0, count($book->getBookClubLists()));
 }
Exemplo n.º 2
0
 public function testManyToManySetterIsNotLoosingAnyReference()
 {
     $list1 = new BookClubList();
     $list2 = new BookClubList();
     $book = new Book();
     $book->addBookClubList($list1);
     $book->addBookClubList($list2);
     $lists = $book->getBookClubLists();
     $this->assertCount(2, $lists, 'setRelCol is losing references to referenced object');
     $rels = $book->getBookListRels();
     $this->assertCount(2, $rels, 'setRelCol is losing references to relation object');
     foreach ($rels as $rel) {
         $this->assertNotNull($rel->getBook(), 'setRelCol is losing backreference on set relation to local object');
         $this->assertNotNull($rel->getBookClubList(), 'setRelCol is losing backreference on set relation to referenced object');
     }
     foreach ($lists as $list) {
         $this->assertCount(1, $list->getBooks(), 'setRelCol is losing backreference on set objects');
     }
 }