public function testPrice() { $value = 1.1; $currency = 'USD'; $price = new Price(); $price->setCurrency($currency); $price->setValue($value); $item = new BaseQuoteProductItem(); $item->setPrice($price); static::assertSame($price, $item->getPrice()); $item->postLoad(); static::assertNotSame($price, $item->getPrice()); static::assertEquals($price, $item->getPrice()); $item->updatePrice(); $reflection = new \ReflectionProperty(get_class($item), 'value'); $reflection->setAccessible(true); static::assertEquals($value, $reflection->getValue($item)); $reflection = new \ReflectionProperty(get_class($item), 'currency'); $reflection->setAccessible(true); static::assertEquals($currency, $reflection->getValue($item)); }
/** * @param BaseQuoteProductItem $item * @param string $default * @return string */ protected function formatPrice(BaseQuoteProductItem $item, $default = '') { if ($item->getPrice()) { return $this->numberFormatter->formatCurrency($item->getPrice()->getValue(), $item->getPrice()->getCurrency()); } return $default; }