Viewing file: TransferTest.php (5.51 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Razorpay\Tests;
use Razorpay\Api\Request;
class TransferTest extends TestCase { /** * Specify unique transfer id, account id & payment id * for example trf_IEn4KYFgfD7q3F, acc_HjVXbtpSCIxENR & * pay_I7watngocuEY4P */
private $transferId = "trf_JtBI1uAaDdKkpJ";
private $accountId = "acc_HjVXbtpSCIxENR";
private $paymentId = "pay_LdarHRbodWJeXO";
public function setUp(): void { parent::setUp(); } /** * Direct transfers */ public function testDirectTransfer() { $data = $this->api->transfer->create(array('account' => $this->accountId, 'amount' => 500, 'currency' => 'INR'));
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('collection',$data->toArray())); }
/** * Create transfers from payment */ public function testCreateTransferPayment() { $data = $this->api->payment->fetch($this->paymentId)->transfer(array('transfers' => array(array('account'=> $this->accountId, 'amount'=> '100', 'currency'=>'INR', 'notes'=> array('name'=>'Gaurav Kumar', 'roll_no'=>'IEC2011025'), 'linked_account_notes'=>array('branch'), 'on_hold'=>'1', 'on_hold_until'=>'1671222870'))));
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('collection',$data->toArray())); }
/** * Create transfers from order */ public function testCreateTransferOrder() { $data = $this->api->order->create(array('amount' => 100,'currency' => 'INR','transfers' => array(array('account' =>$this->accountId,'amount' => 100,'currency' => 'INR','notes' => array('branch' => 'Acme Corp Bangalore North','name' => 'Gaurav Kumar'),'linked_account_notes' => array('branch'),'on_hold' => 1,'on_hold_until' => 1671222870))));
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('transfer',$data->toArray())); }
/** * Fetch transfer for a payment */ public function testFetchTransferPayment() { $data = $this->api->payment->fetch($this->paymentId)->transfers();
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('collection',$data->toArray())); }
/** * Fetch transfer for an order */ public function testFetchTransferOrder() { $order = $this->api->order->all();
if($order['count'] !== 0){
$data = $this->api->order->fetch($order['items'][0]['id'])->transfers(array('expand[]'=>'transfers'));
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('order',$data->toArray())); } } /** * Fetch transfer */ public function testFetchTransfer() {
$data = $this->api->transfer->fetch($this->transferId);
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('order',$data->toArray())); }
/** * Fetch transfers for a settlement */ public function testFetchSettlement() { $settlement = $this->api->transfer->all(array('expand[]'=> 'recipient_settlement'));
if($settlement['count'] !== 0){
$data = $this->api->transfer->all(array('recipient_settlement_id'=> $settlement['items'][0]['recipient_settlement_id']));
$this->assertTrue(is_array($data->toArray()));
} }
/** * Fetch settlement details */ public function testFetchSettlementDetails() { $data = $this->api->transfer->all(array('expand[]'=> 'recipient_settlement')); $this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('collection',$data->toArray())); }
/** * Refund payments and reverse transfer from a linked account */ public function testRefundPayment() { $data = $this->api->payment->fetch($this->paymentId)->refund(array('amount'=> '100')); $this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('refund',$data->toArray())); }
/** * Fetch payments of a linked account */ public function testFetchPaymentsLinkedAccounts() { $data = $this->api->payment->fetch($this->paymentId)->refund(array('amount'=> '100')); $this->assertTrue(is_array($data->toArray())); }
/** * Reverse transfers from all linked accounts */ public function testReverseLinkedAccount() { $transfer = $this->api->transfer->create(array('account' => $this->accountId, 'amount' => 100, 'currency' => 'INR'));
$data = $this->api->transfer->fetch($transfer->id)->reverse(array('amount'=>100));
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('refund',$data->toArray())); }
/** * Hold settlements for transfers */ public function testHoldSettlements() { $data = $this->api->payment->fetch($this->paymentId)->transfer(array('transfers' => array(array('account' => $this->accountId, 'amount' => '100', 'currency' => 'INR', 'on_hold'=>'1')))); $this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('collection',$data->toArray())); }
/** * Modify settlement hold for transfers */ public function testModifySettlements() { $data = $this->api->transfer->fetch($this->transferId)->edit(array('on_hold'=>1));
$this->assertTrue(is_array($data->toArray()));
$this->assertTrue(in_array('transfer',$data->toArray())); } }
|