This repository has been archived on 2026-04-06. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
PayPal-PHP-SDK/tests/PayPal/Test/Api/CaptureTest.php
Jay Patel 6e14f51aa5 Updated Testing Framework fixing Travis Builds
- Added Group  and Catching errors
2014-09-21 20:37:34 -05:00

96 lines
2.8 KiB
PHP

<?php
namespace PayPal\Test\Api;
use PayPal\Api\Capture;
use PayPal\Api\Refund;
use PayPal\Api\Authorization;
use PayPal\Api\Amount;
use PayPal\Test\Constants;
class CaptureTest extends \PHPUnit_Framework_TestCase {
private $captures;
public static $authorization_id = "AUTH-123";
public static $create_time = "2013-02-28T00:00:00Z";
public static $id = "C-5678";
public static $parent_payment = "PAY-123";
public static $state = "Created";
public static function createCapture() {
$capture = new Capture();
$capture->setCreateTime(self::$create_time);
$capture->setId(self::$id);
$capture->setParentPayment(self::$parent_payment);
$capture->setState(self::$state);
return $capture;
}
public function setup() {
$this->captures['partial'] = self::createCapture();
$capture = self::createCapture();
$capture->setAmount(AmountTest::createAmount());
$capture->setLinks(array(LinksTest::createLinks()));
$this->captures['full'] = $capture;
}
public function testGetterSetter() {
$this->assertEquals(self::$create_time, $this->captures['partial']->getCreateTime());
$this->assertEquals(self::$id, $this->captures['partial']->getId());
$this->assertEquals(self::$parent_payment, $this->captures['partial']->getParentPayment());
$this->assertEquals(self::$state, $this->captures['partial']->getState());
$this->assertEquals(AmountTest::$currency, $this->captures['full']->getAmount()->getCurrency());
$links = $this->captures['full']->getLinks();
$this->assertEquals(LinksTest::$href, $links[0]->getHref());
}
public function testSerializeDeserialize() {
$c1 = $this->captures['partial'];
$c2 = new Capture();
$c2->fromJson($c1->toJson());
$this->assertEquals($c1, $c2);
}
/**
* @group integration
*/
public function testOperations()
{
try {
$authId = AuthorizationTest::authorize();
$auth = Authorization::get($authId);
$amount = new Amount();
$amount->setCurrency("USD");
$amount->setTotal("1.00");
$captr = new Capture();
$captr->setId($authId);
$captr->setAmount($amount);
$capt = $auth->capture($captr);
$captureId = $capt->getId();
$this->assertNotNull($captureId);
$refund = new Refund();
$refund->setId($captureId);
$refund->setAmount($amount);
$capture = Capture::get($captureId);
$this->assertNotNull($capture->getId());
$retund = $capture->refund($refund);
$this->assertNotNull($retund->getId());
} catch (PPConnectionException $ex) {
$this->markTestSkipped(
'Tests failing because of intermittent failures in Paypal Sandbox environment.' . $ex->getMessage()
);
}
}
}