From 479730d1c4217639de18afe2a24e72d6f964f5ab Mon Sep 17 00:00:00 2001 From: Ganesh Hegde <1ganesh1@facebook.com> Date: Tue, 28 May 2013 18:20:40 +0530 Subject: [PATCH] adding new testcases for Auth Capture --- tests/PayPal/Test/Api/AuthorizationTest.php | 87 +++++++++++++++++++-- tests/PayPal/Test/Api/CaptureTest.php | 32 ++++++++ tests/PayPal/Test/Api/CreditCardTest.php | 3 +- 3 files changed, 112 insertions(+), 10 deletions(-) diff --git a/tests/PayPal/Test/Api/AuthorizationTest.php b/tests/PayPal/Test/Api/AuthorizationTest.php index ba104f9..bc74ef6 100644 --- a/tests/PayPal/Test/Api/AuthorizationTest.php +++ b/tests/PayPal/Test/Api/AuthorizationTest.php @@ -5,19 +5,24 @@ use PayPal\Api\Amount; use PayPal\Api\Authorization; use PayPal\Api\Links; use PayPal\Test\Constants; +use PayPal\Api\RedirectUrls; +use PayPal\Api\Address; + +use PayPal\Api\Capture; +use PayPal\Api\CreditCard; +use PayPal\Api\Payer; +use PayPal\Api\Payment; +use PayPal\Api\FundingInstrument; +use PayPal\Api\Transaction; class AuthorizationTest extends \PHPUnit_Framework_TestCase { - private $authorizations = array(); - public static $create_time = "2013-02-28T00:00:00Z"; public static $id = "AUTH-123"; public static $state = "Created"; public static $parent_payment = "PAY-12345"; - public static $currency = "USD"; public static $total = "1.12"; - public static $href = "USD"; public static $rel = "1.12"; public static $method = "1.12"; @@ -34,6 +39,53 @@ class AuthorizationTest extends \PHPUnit_Framework_TestCase { return $authorization; } + public static function authorize() + { + $addr = new Address(); + $addr->setLine1("3909 Witmer Road"); + $addr->setLine2("Niagara Falls"); + $addr->setCity("Niagara Falls"); + $addr->setState("NY"); + $addr->setPostal_code("14305"); + $addr->setCountry_code("US"); + $addr->setPhone("716-298-1822"); + + $card = new CreditCard(); + $card->setType("visa"); + $card->setNumber("4417119669820331"); + $card->setExpire_month("11"); + $card->setExpire_year("2019"); + $card->setCvv2("012"); + $card->setFirst_name("Joe"); + $card->setLast_name("Shopper"); + $card->setBilling_address($addr); + + $fi = new FundingInstrument(); + $fi->setCredit_card($card); + + $payer = new Payer(); + $payer->setPayment_method("credit_card"); + $payer->setFunding_instruments(array($fi)); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $transaction = new Transaction(); + $transaction->setAmount($amount); + $transaction->setDescription("This is the payment description."); + + $payment = new Payment(); + $payment->setIntent("authorize"); + $payment->setPayer($payer); + $payment->setTransactions(array($transaction)); + + $paymnt = $payment->create(); + $resArray = $paymnt->toArray(); + + return $authId = $resArray['transactions'][0]['related_resources'][0]['authorization']['id']; + + } public function setup() { $authorization = new Authorization(); $authorization->setCreateTime(self::$create_time); @@ -41,9 +93,8 @@ class AuthorizationTest extends \PHPUnit_Framework_TestCase { $authorization->setState(self::$state); $authorization->setParentPayment(self::$parent_payment); $this->authorizations['partial'] = $authorization; - - $this->authorizations['full'] = self::createAuthorization(); + } public function testGetterSetter() { @@ -60,10 +111,30 @@ class AuthorizationTest extends \PHPUnit_Framework_TestCase { public function testSerializeDeserialize() { $a1 = $this->authorizations['partial']; - $a2 = new Authorization(); $a2->fromJson($a1->toJson()); - $this->assertEquals($a1, $a2); } + public function testOperations() { + $authId = self::authorize(); + $auth = Authorization::get($authId); + $this->assertNotNull($auth->getId()); + + $amount = new Amount(); + $amount->setCurrency("USD"); + $amount->setTotal("1.00"); + + $captur = new Capture(); + $captur->setId($authId); + $captur->setAmount($amount); + + $capt = $auth->capture($captur); + $this->assertNotNull( $capt->getId()); + + $authId = self::authorize(); + $auth = Authorization::get($authId); + $void = $auth->void(); + $this->assertNotNull($void->getId()); + + } } \ No newline at end of file diff --git a/tests/PayPal/Test/Api/CaptureTest.php b/tests/PayPal/Test/Api/CaptureTest.php index 56000dc..a1162fd 100644 --- a/tests/PayPal/Test/Api/CaptureTest.php +++ b/tests/PayPal/Test/Api/CaptureTest.php @@ -2,6 +2,9 @@ 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 { @@ -52,4 +55,33 @@ class CaptureTest extends \PHPUnit_Framework_TestCase { $this->assertEquals($c1, $c2); } + + public function testOperations() + { + $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()); + + } } \ No newline at end of file diff --git a/tests/PayPal/Test/Api/CreditCardTest.php b/tests/PayPal/Test/Api/CreditCardTest.php index c4ae466..27896fe 100644 --- a/tests/PayPal/Test/Api/CreditCardTest.php +++ b/tests/PayPal/Test/Api/CreditCardTest.php @@ -1,11 +1,9 @@ assertGreaterThan(0, count($c2->getLinks())); $this->assertEquals(self::$cardType, $c2->getType()); $this->assertNotNull($c2->getState()); + $this->assertEquals(true, $c2->delete()); } } \ No newline at end of file