TokenRequestTest::testSetters()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 37

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 37
rs 9.328
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace Xsolla\SDK\Tests\Unit\API\PaymentUI;
4
5
use PHPUnit\Framework\TestCase;
6
use Xsolla\SDK\API\PaymentUI\TokenRequest;
7
8
/**
9
 * @group unit
10
 */
11
class TokenRequestTest extends TestCase
12
{
13
    public function testSetters()
14
    {
15
        $tokenRequest = new TokenRequest('PROJECT_ID', 'USER_ID');
16
        $actualRequest = $tokenRequest->setUserEmail('[email protected]')
17
            ->setCustomParameters(['a' => 1, 'b' => 2])
18
            ->setCurrency('USD')
19
            ->setExternalPaymentId(12345)
20
            ->setSandboxMode(true)
21
            ->setUserName('USER_NAME')
22
            ->setPurchase(1.5, 'EUR')
23
            ->toArray();
24
25
        $expectedRequest = [
26
            'user' => [
27
                'id' => ['value' => 'USER_ID'],
28
                'email' => ['value' => '[email protected]'],
29
                'name' => ['value' => 'USER_NAME'],
30
            ],
31
            'settings' => [
32
                'project_id' => 'PROJECT_ID',
33
                'currency' => 'USD',
34
                'external_id' => 12345,
35
                'mode' => 'sandbox',
36
            ],
37
            'custom_parameters' => [
38
                'a' => 1,
39
                'b' => 2,
40
            ],
41
            'purchase' => [
42
                'checkout' => [
43
                    'amount' => 1.5,
44
                    'currency' => 'EUR',
45
                ],
46
            ],
47
        ];
48
        static::assertSame($expectedRequest, $actualRequest);
49
    }
50
}
51