a7f1b5323d63ae1ba57dd31adc9ce2aca68d01d1
[WP-Plugins/glm-member-db.git] /
1 <?php
2 namespace PayPal\Test\Api;
3
4 use PayPal\Api\CreditCardHistory;
5
6 use PayPal\Api\Address;
7 use PayPal\Api\CreditCard;
8 use PayPal\Test\Constants;
9
10 class CreditCardHistoryTest extends \PHPUnit_Framework_TestCase {
11         
12         private $cards;
13         
14         public static $id = "id";
15         public static $validUntil = "2013-02-28T00:00:00Z";
16         public static $state = "created";
17         public static $payerId = "payer-id";
18         public static $cardType = "visa";
19         public static $cardNumber = "4417119669820331";
20         public static $expireMonth = 11;
21         public static $expireYear = "2019";
22         public static $cvv = "012";
23         public static $firstName = "V";
24         public static $lastName = "C";
25         
26         public static function createCreditCard() {
27                 $card = new CreditCard();
28                 $card->setType(self::$cardType);
29                 $card->setNumber(self::$cardNumber);
30                 $card->setExpireMonth(self::$expireMonth);
31                 $card->setExpireYear(self::$expireYear);
32                 $card->setCvv2(self::$cvv);
33                 $card->setFirstName(self::$firstName);
34                 $card->setLastName(self::$lastName);
35                 $card->setId(self::$id);
36                 $card->setValidUntil(self::$validUntil);
37                 $card->setState(self::$state);
38                 $card->setPayerId(self::$payerId);
39                 return $card;
40         }
41         
42         public function setup() {
43                 
44                 $card = self::createCreditCard();
45                 $card->setBillingAddress(AddressTest::createAddress()); 
46                 $card->setLinks(array(LinksTest::createLinks()));
47                 $this->cards['full'] = $card;
48                 
49                 $card = self::createCreditCard();       
50                 $this->cards['partial'] = $card;
51         }
52         
53         public function testGetterSetters() {
54                 $cardHistory = new CreditCardHistory();
55                 $cardHistory->setCreditCards(array($this->cards['partial'], $this->cards['full']));
56                 $cardHistory->setCount(2);
57                 
58                 $this->assertEquals(2, count($cardHistory->getCreditCards()));
59         }
60
61         
62         public function testSerializationDeserialization() {
63                 $cardHistory = new CreditCardHistory();
64                 $cardHistory->setCreditCards(array($this->cards['partial'], $this->cards['full']));
65                 $cardHistory->setCount(2);
66         
67                 $cardHistoryCopy = new CreditCardHistory();
68                 $cardHistoryCopy->fromJson($cardHistory->toJSON());
69                 
70                 $this->assertEquals($cardHistory, $cardHistoryCopy);
71         }
72 }