. */ /** * Doctrine_Query_ApplyInheritance_TestCase * * @package Doctrine * @author Konsta Vesterinen * @license http://www.opensource.org/licenses/lgpl-license.php LGPL * @category Object Relational Mapping * @link www.phpdoctrine.com * @since 1.0 * @version $Revision$ */ class Doctrine_Query_ApplyInheritance_TestCase extends Doctrine_UnitTestCase { public function prepareData() { } public function prepareTables() { $this->tables = array('InheritanceDeal', 'InheritanceEntityUser', 'InheritanceUser'); parent::prepareTables(); } public function testApplyInheritance() { $query = new Doctrine_Query(); $query->from('InheritanceDeal deal, deal.Users usrs'); $query->where('usrs.id = 1'); $sql = 'SELECT i.id AS i__id, i.name AS i__name, i2.id AS i2__id, i2.username AS i2__username FROM inheritance_deal i LEFT JOIN inheritance_entity_user i3 ON i.id = i3.entity_id LEFT JOIN inheritance_user i2 ON i2.id = i3.user_id WHERE i2.id = 1 AND (i3.type = 1 OR i3.type IS NULL)'; $this->assertEqual($sql, $query->getSql()); } }