Sonata\Tests\Component\Product\BaseProductServiceTest::testProductDeliveriesSynchronization PHP Метод

testProductDeliveriesSynchronization() публичный Метод

    public function testProductDeliveriesSynchronization()
    {
        $provider = $this->getBaseProvider();
        $product = new Product();
        $delivery1 = new Delivery();
        $product->addDelivery($delivery1);
        $variation = $provider->createVariation($product, false);
        $this->assertEquals(0, count($variation->getDeliveries()));
        $provider->synchronizeVariationsDeliveries($product);
        $this->assertEquals(1, count($variation->getDeliveries()));
        $delivery2 = new Delivery();
        $product->addDelivery($delivery2);
        $this->assertEquals(1, count($variation->getDeliveries()));
        $provider->synchronizeVariationsDeliveries($product);
        $this->assertEquals(2, count($variation->getDeliveries()));
        $product->removeDelivery($delivery1);
        $this->assertEquals(2, count($variation->getDeliveries()));
        $provider->synchronizeVariationsDeliveries($product);
        $this->assertEquals(1, count($variation->getDeliveries()));
    }