PurchaseTest   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 16
dl 0
loc 28
rs 10
c 2
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A testBuildResponseData() 0 21 1
1
<?php
2
3
namespace Carpenstar\ByBitAPI\Spot\LeverageToken\Purchase\Tests;
4
5
use Carpenstar\ByBitAPI\Core\Response\CurlResponseHandler;
6
use Carpenstar\ByBitAPI\Spot\LeverageToken\Purchase\Response\PurchaseResponse;
7
use PHPUnit\Framework\TestCase;
8
9
class PurchaseTest extends TestCase
10
{
11
    /**
12
     * Тестирование сборки объекта ответа
13
     *
14
     * @return void
15
     */
16
    public function testBuildResponseData()
17
    {
18
        $json = '{"retCode":0,"retMsg":"OK","result":{"amount":"100","id":"2085","ltCode":"DOT3LUSDT","orderAmount":"","orderQuantity":"","orderStatus":"2","serialNo":"x005","timestamp": 1662549845373,"valueCoin":"USDT"},"retExtInfo":{},"time":1662549845453}';
19
        $data = (new CurlResponseHandler())->build(json_decode($json, true), PurchaseResponse::class);
20
21
        $this->assertEquals(0, $data->getReturnCode());
22
        $this->assertEquals('OK', $data->getReturnMessage());
23
        $this->assertInstanceOf(PurchaseResponse::class, $data->getResult());
24
25
        /** @var PurchaseResponse $purchaseInfo */
26
        $purchaseInfo = $data->getResult();
27
28
        $this->assertInstanceOf(\DateTime::class, $purchaseInfo->getTimestamp());
29
        $this->assertEquals(100, $purchaseInfo->getAmount());
30
        $this->assertEquals(2085, $purchaseInfo->getId());
31
        $this->assertEquals('DOT3LUSDT', $purchaseInfo->getLtCode());
32
        $this->assertEquals(0.0, $purchaseInfo->getOrderAmount());
33
        $this->assertEquals(0.0, $purchaseInfo->getOrderQuantity());
34
        $this->assertEquals(2, $purchaseInfo->getOrderStatus());
35
        $this->assertEquals('x005', $purchaseInfo->getSerialNo());
36
        $this->assertEquals('USDT', $purchaseInfo->getValueCoin());
37
    }
38
}
39