/** * Add price (removing the older one) * * @param AbstractProductPrice $price * * @return ProductValue */ public function addPrice(AbstractProductPrice $price) { if (null !== ($actualPrice = $this->getPrice($price->getCurrency()))) { $this->removePrice($actualPrice); } $this->prices->add($price); $price->setValue($this); return $this; }
function it_normalizes_empty_price(AbstractProductPrice $price) { $price->getData()->willReturn(''); $price->getCurrency()->willReturn('EUR'); $this->normalize($price, null, ['field_name' => 'price'])->shouldReturn(['price-EUR' => '']); }
function it_normalizes_price(AbstractProductPrice $price) { $price->getData()->willReturn('12.75'); $price->getCurrency()->willReturn('EUR'); $this->normalize($price, 'mongodb_json', [])->shouldReturn(['data' => '12.75', 'currency' => 'EUR']); }