示例#1
0
 public function makePayment()
 {
     $payment = $this->getPayment();
     $request = new MakePaymentRequest();
     $billTransaction = new BillTransaction();
     //        $billTransaction->setBillType('Bill Payment');
     $billTransaction->setID1(1);
     $billTransaction->setAmountToApplyToBill(static::$amount);
     $request->getBillTransactions()->setBillTransaction(array($billTransaction));
     $tokenToCharge = new TokenToCharge();
     $tokenToCharge->setAmount(static::$amount);
     $tokenToCharge->setCardProcessingMethod(CardProcessingMethod::UNASSIGNED);
     $tokenToCharge->setExpectedFeeAmount(static::$feeAmount);
     $tokenToCharge->setToken(static::$token);
     $request->getTokensToCharge()->setTokenToCharge(array($tokenToCharge));
     $transaction = new Transaction();
     $transaction->setAmount(static::$amount);
     $transaction->setFeeAmount(static::$feeAmount);
     $request->setTransaction($transaction);
     $paymentDetails = new PaymentDetails();
     $paymentDetails->setMerchantName($GLOBALS['__PAYUM_HEARTLAND_MERCHANT_NAME']);
     $paymentDetails->setRequest($request);
     $captureRequest = new CaptureRequest($paymentDetails);
     $payment->execute($captureRequest);
     $statusRequest = new BinaryMaskStatusRequest($captureRequest->getModel());
     $payment->execute($statusRequest);
     /** @var GetTokenResponse $response */
     $response = $statusRequest->getModel()->getResponse();
     $this->assertTrue($statusRequest->isSuccess(), $paymentDetails->getMessages());
 }
示例#2
0
 /**
  * @test
  */
 public function checkErrorResponse()
 {
     $payment = $this->getPayment();
     $request = new MakePaymentRequest();
     $request->setIncludeReceiptInResponse(false);
     $request->getCredential();
     $paymentDetails = new PaymentDetails();
     $paymentDetails->setRequest($request);
     $captureRequest = new CaptureRequest($paymentDetails);
     $payment->execute($captureRequest);
     $statusRequest = new BinaryMaskStatusRequest($captureRequest->getModel());
     $payment->execute($statusRequest);
     $model = $statusRequest->getModel();
     $this->assertFalse($statusRequest->isSuccess());
     $this->assertEmpty($model['transactionId']);
     $this->assertNotEmpty($model['messages']);
     $this->assertTrue(is_string($model['messages']));
 }