public function testFindBy() { try { $c = new ModelCriteria('bookstore', 'Book'); $books = $c->findBy('Foo', 'Bar'); $this->fail('findBy() throws an exception when called on an unknown column name'); } catch (PropelException $e) { $this->assertTrue(true, 'findBy() throws an exception when called on an unknown column name'); } $con = Propel::getConnection(BookPeer::DATABASE_NAME); $c = new ModelCriteria('bookstore', 'Book'); $books = $c->findBy('Title', 'Don Juan', $con); $expectedSQL = "SELECT book.ID, book.TITLE, book.ISBN, book.PRICE, book.PUBLISHER_ID, book.AUTHOR_ID FROM `book` WHERE book.TITLE='Don Juan'"; $this->assertEquals($expectedSQL, $con->getLastExecutedQuery(), 'findBy() adds simple column conditions'); $this->assertTrue($books instanceof PropelCollection, 'findBy() issues a find()'); $this->assertEquals(1, count($books), 'findBy() adds simple column conditions'); $book = $books->shift(); $this->assertTrue($book instanceof Book, 'findBy() returns an array of Model objects by default'); $this->assertEquals('Don Juan', $book->getTitle(), 'findBy() returns the model objects matching the query'); }