All checks were successful
Build, Push and Deploy / build-and-push (push) Successful in 3m3s
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 16s
Build, Push and Deploy / deploy-staging (push) Successful in 32s
Build, Push and Deploy / deploy-production (push) Has been skipped
Build, Push and Deploy / cleanup (push) Successful in 1s
94 lines
3.1 KiB
PHP
94 lines
3.1 KiB
PHP
<?php
|
|
|
|
namespace Omnipay\PayPal\Message;
|
|
|
|
use Omnipay\Common\Exception\InvalidRequestException;
|
|
use Omnipay\Tests\TestCase;
|
|
|
|
class ExpressTransactionSearchRequestTest extends TestCase
|
|
{
|
|
/**
|
|
* @var ExpressTransactionSearchRequest
|
|
*/
|
|
private $request;
|
|
|
|
public function setUp()
|
|
{
|
|
parent::setUp();
|
|
|
|
$this->request = new ExpressTransactionSearchRequest($this->getHttpClient(), $this->getHttpRequest());
|
|
}
|
|
|
|
public function testGetData()
|
|
{
|
|
$startDate = '2015-01-01';
|
|
$endDate = '2016-01-01';
|
|
|
|
$this->request->initialize(array(
|
|
'amount' => '10.00',
|
|
'currency' => 'USD',
|
|
'startDate' => $startDate,
|
|
'endDate' => $endDate,
|
|
'salutation' => 'Mr.',
|
|
'firstName' => 'Jhon',
|
|
'middleName' => 'Carter',
|
|
'lastName' => 'Macgiver',
|
|
'suffix' => 'Jh',
|
|
'email' => 'test@email.com',
|
|
'receiver' => 'Patt Doret',
|
|
'receiptId' => '1111',
|
|
'transactionId' => 'XKCD',
|
|
'invoiceNumber' => '123456789',
|
|
'card' => array('number' => '376449047333005'),
|
|
'auctionItemNumber' => '321564',
|
|
'transactionClass' => 'Received',
|
|
'status' => 'Success',
|
|
'profileId' => '00000000000'
|
|
));
|
|
|
|
$data = $this->request->getData();
|
|
|
|
$startDate = new \DateTime($startDate);
|
|
$endDate = new \DateTime($endDate);
|
|
|
|
$this->assertSame('10.00', $data['AMT']);
|
|
$this->assertSame('USD', $data['CURRENCYCODE']);
|
|
$this->assertSame($startDate->format(\DateTime::ISO8601), $data['STARTDATE']);
|
|
$this->assertSame($endDate->format(\DateTime::ISO8601), $data['ENDDATE']);
|
|
$this->assertSame('Mr.', $data['SALUTATION']);
|
|
$this->assertSame('Jhon', $data['FIRSTNAME']);
|
|
$this->assertSame('Carter', $data['MIDDLENAME']);
|
|
$this->assertSame('Macgiver', $data['LASTNAME']);
|
|
$this->assertSame('Jh', $data['SUFFIX']);
|
|
$this->assertSame('test@email.com', $data['EMAIL']);
|
|
$this->assertSame('XKCD', $data['TRANSACTIONID']);
|
|
$this->assertSame('123456789', $data['INVNUM']);
|
|
$this->assertSame('376449047333005', $data['ACCT']);
|
|
$this->assertSame('321564', $data['AUCTIONITEMNUMBER']);
|
|
$this->assertSame('Received', $data['TRANSACTIONCLASS']);
|
|
$this->assertSame('Success', $data['STATUS']);
|
|
$this->assertSame('00000000000', $data['PROFILEID']);
|
|
}
|
|
|
|
public function testWithoutStartDate()
|
|
{
|
|
$this->request->initialize(array());
|
|
|
|
$this->expectException(InvalidRequestException::class);
|
|
$this->expectExceptionMessage('The startDate parameter is required');
|
|
|
|
$this->request->getData();
|
|
}
|
|
|
|
public function testAmountWithoutCurrency()
|
|
{
|
|
$this->request->setStartDate('2015-01-01');
|
|
$this->request->setAmount(150.00);
|
|
|
|
$this->expectException(InvalidRequestException::class);
|
|
$this->expectExceptionMessage('The currency parameter is required');
|
|
|
|
$this->request->getData();
|
|
}
|
|
}
|