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/SaleTest.php
Ganesh Hegde 50b09bdbde testcases updated
updated testcases to match new json schema
and updates with camel case function names
2013-05-28 10:08:34 +05:30

73 lines
2.0 KiB
PHP

<?php
namespace PayPal\Test\Api;
use PayPal\Api\Refund;
use PayPal\Api\Sale;
use PayPal\Test\Constants;
use PayPal\Test\Api\AmountTest;
use PayPal\Test\Api\PaymentTest;
use PayPal\Test\Api\LinksTest;
class SaleTest extends \PHPUnit_Framework_TestCase {
private $sale;
public static $captureId = "CAP-123";
public static $createTime = "2013-02-28T00:00:00Z";
public static $id = "R-5678";
public static $parentPayment = "PAY-123";
public static $state = "Created";
public static function createSale() {
$sale = new Sale();
$sale->setAmount(AmountTest::createAmount());
$sale->setCreateTime(self::$createTime);
$sale->setId(self::$id);
$sale->setLinks(array(LinksTest::createLinks()));
$sale->setParentPayment(self::$parentPayment);
$sale->setState(self::$state);
return $sale;
}
public function setup() {
$this->sale = self::createSale();
}
public function testGetterSetter() {
$this->assertEquals(self::$createTime, $this->sale->getCreateTime());
$this->assertEquals(self::$id, $this->sale->getId());
$this->assertEquals(self::$parentPayment, $this->sale->getParentPayment());
$this->assertEquals(self::$state, $this->sale->getState());
$this->assertEquals(AmountTest::$currency, $this->sale->getAmount()->getCurrency());
$links = $this->sale->getLinks();
$this->assertEquals(LinksTest::$href, $links[0]->getHref());
}
public function testSerializeDeserialize() {
$s1 = $this->sale;
$s2 = new Sale();
$s2->fromJson($s1->toJson());
$this->assertEquals($s1, $s2);
}
public function testOperations() {
$payment = PaymentTest::createNewPayment();
$payment->create();
$transactions = $payment->getTransactions();
$resources = $transactions[0]->getRelatedResources();
$saleId = $resources[0]->getSale()->getId();
$sale = Sale::get($saleId);
$this->assertNotNull($sale);
$refund = new Refund();
$refund->setAmount(AmountTest::createAmount());
$sale->refund($refund);
$this->setExpectedException('\InvalidArgumentException');
$sale->refund(NULL);
}
}