public function testQueryModelClassOverride()
 {
     $manualFirst = 'Glorpen\\Propel\\PropelBundle\\Tests\\Fixtures\\Model\\ManualBook';
     $manualSecond = 'Glorpen\\Propel\\PropelBundle\\Tests\\Fixtures\\Model\\ManualSecondBook';
     \Propel::disableInstancePooling();
     $o = $this->setUpListener();
     $p = new TestOMProvider(function ($row, $cols) use($manualFirst, $manualSecond) {
         if ($row[0] == 1) {
             return $manualFirst;
         } else {
             return $manualSecond;
         }
     }, array($manualFirst => self::$modelClass, $manualSecond => self::$modelClass));
     $o->addProvider($p);
     $b = new Book();
     $b->setTitle("extended-title");
     $b->save();
     $b = new Book();
     $b->setTitle("extended-title2");
     $b->save();
     $manual1 = BookQuery::create()->filterById(1)->findOne();
     $this->assertInstanceOf($manualFirst, $manual1);
     $manual2 = BookQuery::create()->filterById(2)->findOne();
     $this->assertInstanceOf($manualSecond, $manual2);
 }