BestBidAskPriceTest   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 13
dl 0
loc 26
rs 10
c 3
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A testBuildResponseData() 0 19 1
1
<?php
2
3
namespace Carpenstar\ByBitAPI\Spot\MarketData\BestBidAskPrice\Tests;
4
5
use Carpenstar\ByBitAPI\Core\Response\CurlResponseHandler;
6
use Carpenstar\ByBitAPI\Spot\MarketData\BestBidAskPrice\Response\BestBidAskPriceResponse;
7
use PHPUnit\Framework\TestCase;
8
9
class BestBidAskPriceTest extends TestCase
10
{
11
    /**
12
     * Тестирование сборки объекта ответа
13
     *
14
     * @return void
15
     */
16
    public function testBuildResponseData()
17
    {
18
        $json = '{"retCode":0,"retMsg":"OK","result":{"symbol":"BTCUSDT","bidPrice":"26298.69","bidQty":"0.106418","askPrice":"26298.7","askQty":"0.008773","time":1683979447464},"retExtInfo":{},"time":1683979447820}';
19
        ;
20
        $data = (new CurlResponseHandler())->build(json_decode($json, true), BestBidAskPriceResponse::class);
21
22
        $this->assertEquals(0, $data->getReturnCode());
23
        $this->assertEquals('OK', $data->getReturnMessage());
24
        $this->assertInstanceOf(BestBidAskPriceResponse::class, $data->getResult());
25
26
        /** @var BestBidAskPriceResponse $priceInfo */
27
        $priceInfo = $data->getResult();
28
29
        $this->assertInstanceOf(\DateTime::class, $priceInfo->getTime());
30
        $this->assertEquals('BTCUSDT', $priceInfo->getSymbol());
31
        $this->assertEquals(26298.69, $priceInfo->getBidPrice());
32
        $this->assertEquals(0.106418, $priceInfo->getBidQty());
33
        $this->assertEquals(26298.7, $priceInfo->getAskPrice());
34
        $this->assertEquals(0.008773, $priceInfo->getAskQty());
35
    }
36
}
37