Ejemplo n.º 1
0
 /**
  * {@inheritdoc}
  */
 public function format(Money $money) : string
 {
     $amount = $money->amount();
     $minor = $money->currency()->minor();
     $digits = $money->currency()->digits();
     $code = $money->currency()->code();
     $float = round($amount / $minor, $digits);
     return $this->formatter->formatCurrency($float, $code);
 }
Ejemplo n.º 2
0
 /**
  * Converts a value from its database representation to its PHP representation
  *
  * @param mixed            $value    The value to convert
  * @param AbstractPlatform $platform The currently used database platform
  *
  * @return mixed
  *
  * @throws ConversionException When the conversion fails
  */
 public function convertToPHPValue($value, AbstractPlatform $platform)
 {
     if (empty($value)) {
         return null;
     }
     if ($value instanceof Money) {
         return $value;
     }
     try {
         $money = Money::fromString($value);
     } catch (Exception $exception) {
         throw ConversionException::conversionFailed($value, static::TYPE_NAME);
     }
     return $money;
 }
Ejemplo n.º 3
0
 public function test_that_format_returns_expected_output_for_locale()
 {
     $formatter = LocaleFormatter::fromLocale('en_US');
     $this->assertSame('$1,100.75', $formatter->format(Money::USD(110075)));
 }
Ejemplo n.º 4
0
 /**
  * @expectedException Novuso\System\Exception\DomainException
  */
 public function test_that_compare_to_throws_exception_for_different_currency()
 {
     $money1 = Money::USD(1725);
     $money2 = Money::EUR(1725);
     $money1->compareTo($money2);
 }
Ejemplo n.º 5
0
 /**
  * @expectedException \AssertionError
  */
 public function test_that_compare_to_throws_exception_for_invalid_argument()
 {
     $money = Money::USD(1725);
     $money->compareTo(1725);
 }