/** * @return void */ public function testImportProductOptionValueUsage() { $product = $this->createProductConcrete(); $optionType = $this->createOptionTypeWithValue('SHADE', 'VIOLET'); $productOptionTypeUsage = $this->createProductOptionTypeUsage($product, $optionType); $this->facade->importProductOptionValueUsage($productOptionTypeUsage->getIdProductOptionTypeUsage(), 'VIOLET'); $this->facade->importProductOptionValueUsage($productOptionTypeUsage->getIdProductOptionTypeUsage(), 'VIOLET'); $this->facade->flushBuffer(); $result = SpyProductOptionValueUsageQuery::create()->filterByFkProductOptionTypeUsage($productOptionTypeUsage->getIdProductOptionTypeUsage())->filterByFkProductOptionValue($optionType->getSpyProductOptionValues()[0]->getIdProductOptionValue())->find(); $this->assertEquals(1, $result->count(), 'Failed asserting that method is idempotent'); $this->performAssertionOnTouchTable($product->getFkProductAbstract()); }
/** * @return \Orm\Zed\ProductOption\Persistence\SpyProductOptionValueUsageQuery */ public function createProductOptionValueUsageQuery() { return SpyProductOptionValueUsageQuery::create(); }