1
|
|
|
<?php |
2
|
|
|
namespace PHPSC\PagSeguro\Purchases\Transactions; |
3
|
|
|
|
4
|
|
|
use DateTime; |
5
|
|
|
use PHPSC\PagSeguro\Purchases\Details; |
6
|
|
|
use PHPSC\PagSeguro\Customer\Address; |
7
|
|
|
use PHPSC\PagSeguro\Customer\Customer; |
8
|
|
|
use PHPSC\PagSeguro\Customer\Phone; |
9
|
|
|
use PHPSC\PagSeguro\Items\Item; |
10
|
|
|
use PHPSC\PagSeguro\Items\Items; |
11
|
|
|
use PHPSC\PagSeguro\Shipping\Shipping; |
12
|
|
|
|
13
|
|
|
/** |
14
|
|
|
* @author Renato Moura <[email protected]> |
15
|
|
|
*/ |
16
|
|
|
class DecoderTest extends \PHPUnit_Framework_TestCase |
17
|
|
|
{ |
18
|
|
|
public function testDecodeShouldDoReturningObjectTransaction() |
19
|
|
|
{ |
20
|
|
|
$detailsDate = new DateTime('2011-02-10T16:13:41.000-03:00'); |
21
|
|
|
$detailsLastEventDate = new DateTime('2011-02-10T19:15:11.000-03:00'); |
22
|
|
|
$detailsAddress = new Address('AC', 'Sao Maite', '99500079', 'Centro', 'R Delgado', '55', 'Fundos'); |
23
|
|
|
$customer = new Customer('[email protected]', 'FooBar', new Phone('11', '99999999'), $detailsAddress); |
24
|
|
|
$details = new Details('9E884542', 'REF1234', '6', $detailsDate, $detailsLastEventDate, $customer); |
25
|
|
|
|
26
|
|
|
$paymentMethod = new PaymentMethod(1, 101); |
27
|
|
|
$escrowEndDate = new DateTime('2011-03-10T08:00:00.000-03:00'); |
28
|
|
|
$payment = new Payment($paymentMethod, 49900.00, 0.01, 0.04, 49900.03, 0.02, 1, $escrowEndDate); |
29
|
|
|
|
30
|
|
|
$shippingAddress = new Address('CE', 'Ortega', '40610912', 'Ipe', 'R. Regina', '36', 'Bl.A'); |
31
|
|
|
$shipping = new Shipping(2, $shippingAddress, 23.45); |
32
|
|
|
|
33
|
|
|
$items = new Items; |
34
|
|
|
$items->add(new Item(77, 'Produto 01', 2.5, 4, 20, 300)); |
35
|
|
|
$items->add(new Item(88, 'Produto 02', 342.51, 3, 134.98, 1000)); |
36
|
|
|
|
37
|
|
|
$transaction = new Transaction($details, $payment, 2, $items, $shipping); |
38
|
|
|
|
39
|
|
|
$obj = simplexml_load_file(__DIR__.'/xml/transactionFull.xml'); |
40
|
|
|
$decoder = new Decoder; |
41
|
|
|
$this->assertEquals($transaction, $decoder->decode($obj)); |
42
|
|
|
} |
43
|
|
|
} |
44
|
|
|
|