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

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

    public function testProductPackagesSynchronization()
    {
        $provider = $this->getBaseProvider();
        $product = new Product();
        $package1 = new Package();
        $product->addPackage($package1);
        $variation = $provider->createVariation($product, false);
        $this->assertEquals(0, count($variation->getPackages()));
        $provider->synchronizeVariationsPackages($product);
        $this->assertEquals(1, count($variation->getPackages()));
        $package2 = new Package();
        $product->addPackage($package2);
        $this->assertEquals(1, count($variation->getPackages()));
        $provider->synchronizeVariationsPackages($product);
        $this->assertEquals(2, count($variation->getPackages()));
        $product->removePackage($package1);
        $this->assertEquals(2, count($variation->getPackages()));
        $provider->synchronizeVariationsPackages($product);
        $this->assertEquals(1, count($variation->getPackages()));
    }