Вход Регистрация
Файл: vendor/razorpay/razorpay/tests/TransferTest.php
Строк: 207
<?php

namespace RazorpayTests;

use 
RazorpayApiRequest;

class 
TransferTest extends TestCase
{
    
/**
     * Specify unique transfer id, account id & payment id
     * for example trf_IEn4KYFgfD7q3F, acc_HjVXbtpSCIxENR &
     * pay_I7watngocuEY4P
     */

    
private $transferId "trf_IEn4KYFgfD7q3F";

    private 
$accountId "acc_HjVXbtpSCIxENR";

    private 
$paymentId "pay_I7watngocuEY4P";

    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()));
    }
}
Онлайн: 0
Реклама