Passed
Push — master ( cc4a0b...c8d669 )
by João Felipe Magro
02:41
created

CancelTest::testCancelPartialPaymentSuccessfully()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 12
dl 0
loc 16
rs 9.8666
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace Tests;
4
5
use Ipag\Classes\Authentication;
6
use Ipag\Classes\Endpoint;
7
use Ipag\Ipag;
8
use PHPUnit\Framework\TestCase;
9
10
class CancelTest extends TestCase
11
{
12
    private $ipag;
13
14
    public function setUp()
15
    {
16
        $this->ipag = new Ipag(new Authentication(getenv('ID_IPAG'), getenv('API_KEY')), Endpoint::SANDBOX);
17
    }
18
19
    public function doCancel($tid)
20
    {
21
        return $this->ipag->transaction()->setTid($tid)->cancel();
22
    }
23
24
    public function testCancelPaymentSuccessfully()
25
    {
26
        $paymentTest = new PaymentTest();
27
        $transaction = $paymentTest->doPayment();
28
29
        $canceledTransaction = $this->doCancel($transaction->tid);
30
31
        $this->assertEquals(getenv('CANCELED'), $canceledTransaction->payment->status);
32
        $this->assertEquals($transaction->tid, $canceledTransaction->tid);
33
    }
34
35
    public function testCancelPartialPaymentSuccessfully()
36
    {
37
        $paymentTest = new PaymentTest();
38
        $transaction = $paymentTest->doPayment();
39
40
        $canceledTransaction = $this->ipag
41
            ->transaction()
42
            ->setTid($transaction->tid)
43
            ->setAmount('5.00')
44
            ->cancel();
45
46
        $this->assertEquals(getenv('APPROVED'), $canceledTransaction->payment->status);
47
        $this->assertEquals($transaction->tid, $canceledTransaction->tid);
48
        $this->assertEquals('voided', $canceledTransaction->history[2]->operationType);
49
        $this->assertEquals('succeeded', $canceledTransaction->history[2]->status);
50
        $this->assertEquals('5.00', $canceledTransaction->history[2]->amount);
51
    }
52
}
53