public function testAmountRefundedAccessors() { $charge = new Charge('charge'); $charge->setAmountRefunded(new Money(5000.0, 'JPY')); $this->assertEquals(new Money(5000.0, 'JPY'), $charge->getAmountRefunded()); $charge->setAmountRefunded(300.5, 'USD'); $this->assertEquals(new Money(300.5, 'USD'), $charge->getAmountRefunded()); }
/** * {@inheritdoc} */ public function create(array $data) { $charge = new Charge($data['id']); $charge->setCreated($this->dateTimeUtil->createDateTimeByUnixTime($data['created']))->setPaid($data['paid'])->setCaptured($data['captured'])->setAmount(new Money(floatval($data['amount']), $data['currency']))->setSource($data['source'] ?: null)->setRefunded($data['refunded'])->setAmountRefunded(new Money(floatval($data['amount_refunded']), $data['currency']))->setDispute($data['dispute']); foreach ($data['refunds'] as $refund) { $charge->addRefund($refund); } return $charge; }