Example #1
0
 public function testJoinWithTwice()
 {
     $c = new TestableModelCriteria('bookstore', 'Book');
     $c->join('Book.Review');
     $c->joinWith('Book.Author');
     $c->joinWith('Book.Review');
     $expectedColumns = array(BookPeer::ID, BookPeer::TITLE, BookPeer::ISBN, BookPeer::PRICE, BookPeer::PUBLISHER_ID, BookPeer::AUTHOR_ID, AuthorPeer::ID, AuthorPeer::FIRST_NAME, AuthorPeer::LAST_NAME, AuthorPeer::EMAIL, AuthorPeer::AGE, ReviewPeer::ID, ReviewPeer::REVIEWED_BY, ReviewPeer::REVIEW_DATE, ReviewPeer::RECOMMENDED, ReviewPeer::STATUS, ReviewPeer::BOOK_ID);
     $this->assertEquals($expectedColumns, $c->getSelectColumns(), 'joinWith() adds the with');
     $joins = $c->getJoins();
     $expectedJoinKeys = array('Review', 'Author');
     $this->assertEquals($expectedJoinKeys, array_keys($joins), 'joinWith() adds the join');
 }