Пример #1
0
 public function testOtherAccessors()
 {
     $request = new ChargeRequest();
     $this->assertTrue($request->isCapture());
     $this->assertSame([], $request->getProducts());
     $request->setCapture(false)->addProduct($productA = new Product('product-a-id'))->addProduct($productB = new Product('product-b-id'));
     $this->assertFalse($request->isCapture());
     $this->assertCount(2, $request->getProducts());
     $this->assertSame($productA, $request->getProducts()[0]);
     $this->assertSame($productB, $request->getProducts()[1]);
 }
Пример #2
0
 /**
  * Creates a new charge.
  *
  * @param  ChargeRequest $request
  * @return Charge
  *
  * @throws RequestException
  */
 public function charge(ChargeRequest $request)
 {
     $result = $this->request('POST', '/charges', ['card' => $request->getToken(), 'amount' => $request->getAmount() ? $request->getAmount()->getAmount() : null, 'currency' => $request->getAmount() ? $request->getAmount()->getCurrency() : null, 'capture' => $request->isCapture() ? 'true' : 'false', 'products' => json_encode($request->getProducts())]);
     return $this->objectConverter->convert($result);
 }