public function testDuplicatedParamsInSubQuery() { $this->connection->setAttribute(Doctrine_Core::ATTR_USE_DQL_CALLBACKS, true); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node1'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node2'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node3'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node4'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node5'; $article->save($this->connection); try { $q = Doctrine_Core::getTable('Ticket_1830_Article')->createQuery('a')->select('a.*, t.*')->leftJoin('a.Translation t')->addWhere('a.id = ? OR a.id = ?', array(2, 3))->orderBy('a.id DESC')->limit(1); $results = $q->execute(); $this->assertEqual(count($results), 1); $this->assertEqual($results[0]->id, 3); } catch (Exception $e) { $this->fail($e->getMessage()); } $this->connection->setAttribute(Doctrine_Core::ATTR_USE_DQL_CALLBACKS, false); }
public function testDuplicatedParamsInSubQuery() { $this->connection->setAttribute('use_dql_callbacks', true); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node1'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node2'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node3'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node4'; $article->save($this->connection); $article = new Ticket_1830_Article(); $article->Translation['en']->title = 'Node5'; $article->save($this->connection); try { $q = Doctrine_Query::create($this->connection)->select('a.*, t.*')->from('Ticket_1830_Article a, a.Translation t')->addWhere('a.id = ? OR a.id = ?', array(2, 3))->orderBy('a.id DESC')->limit(1); $results = $q->execute(); $this->assertEqual(count($results), 1); $this->assertEqual($results[0]->id, 3); } catch (Exception $e) { $this->fail($e->getMessage()); } $this->connection->setAttribute('use_dql_callbacks', false); }