示例#1
0
 /**
  * @test
  */
 public function shouldAliasTablesInNestedJoin()
 {
     //given
     $cars = Category::create(array('name' => 'cars'));
     $product = Product::create(array('name' => 'Reno', 'id_category' => $cars->getId()));
     OrderProduct::create(array('id_product' => $product->getId()));
     //when
     $orderProduct = OrderProduct::alias('op')->join('product->category', array('p', 'c'))->where('op.id_order is null')->where(array('p.name' => 'Reno', 'c.name' => 'cars'))->fetch();
     //then
     $fetchedProduct = self::getNoLazy($orderProduct, 'product');
     $this->assertEquals($product->getId(), $fetchedProduct->getId());
     $this->assertEquals($cars, self::getNoLazy($fetchedProduct, 'category'));
 }