38 lines
1.4 KiB
PHP
38 lines
1.4 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace Omnipay\PayPal\Message;
|
||
|
|
|
||
|
|
use Omnipay\Tests\TestCase;
|
||
|
|
|
||
|
|
class ResponseTest extends TestCase
|
||
|
|
{
|
||
|
|
public function testConstruct()
|
||
|
|
{
|
||
|
|
// response should decode URL format data
|
||
|
|
$response = new Response($this->getMockRequest(), 'example=value&foo=bar');
|
||
|
|
$this->assertEquals(array('example' => 'value', 'foo' => 'bar'), $response->getData());
|
||
|
|
}
|
||
|
|
|
||
|
|
public function testProPurchaseSuccess()
|
||
|
|
{
|
||
|
|
$httpResponse = $this->getMockHttpResponse('ProPurchaseSuccess.txt');
|
||
|
|
$response = new Response($this->getMockRequest(), $httpResponse->getBody());
|
||
|
|
|
||
|
|
$this->assertFalse($response->isPending());
|
||
|
|
$this->assertTrue($response->isSuccessful());
|
||
|
|
$this->assertSame('96U93778BD657313D', $response->getTransactionReference());
|
||
|
|
$this->assertNull($response->getMessage());
|
||
|
|
}
|
||
|
|
|
||
|
|
public function testProPurchaseFailure()
|
||
|
|
{
|
||
|
|
$httpResponse = $this->getMockHttpResponse('ProPurchaseFailure.txt');
|
||
|
|
$response = new Response($this->getMockRequest(), $httpResponse->getBody());
|
||
|
|
|
||
|
|
$this->assertFalse($response->isPending());
|
||
|
|
$this->assertFalse($response->isSuccessful());
|
||
|
|
$this->assertNull($response->getTransactionReference());
|
||
|
|
$this->assertSame('This transaction cannot be processed. Please enter a valid credit card expiration year.', $response->getMessage());
|
||
|
|
}
|
||
|
|
}
|