Test Failed
Push — master ( f1d563...1fab6c )
by Vladislav
10:20 queued 07:53
created

indexPriceKlineTest::testIndexPriceKlineResponse()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 17
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
eloc 11
c 0
b 0
f 0
nc 2
nop 0
dl 0
loc 17
rs 9.9
1
<?php
2
namespace Carpenstar\ByBitAPI\Derivatives\MarketData\IndexPriceKline\Tests;
3
4
5
use Carpenstar\ByBitAPI\BybitAPI;
6
use Carpenstar\ByBitAPI\Core\Enums\EnumIntervals;
7
use Carpenstar\ByBitAPI\Derivatives\MarketData\IndexPriceKline\IndexPriceKline;
8
use Carpenstar\ByBitAPI\Derivatives\MarketData\IndexPriceKline\Request\IndexPriceKlineRequest;
9
use Carpenstar\ByBitAPI\Derivatives\MarketData\IndexPriceKline\Response\IndexPriceKlineResponseItem;
10
use PHPUnit\Framework\TestCase;
11
12
class indexPriceKlineTest extends TestCase
13
{
14
    public function testSuccessEndpoint()
15
    {
16
        $bybit = (new BybitAPI())->setCredentials('https://api-testnet.bybit.com');
17
18
        $indexPriceKlineResponse = $bybit->publicEndpoint(IndexPriceKline::class, (new IndexPriceKlineRequest())
19
            ->setSymbol('BTCUSDT')
20
            ->setInterval(EnumIntervals::HOUR_1)
21
            ->setStart('2024-07-11 10:00:00')
22
            ->setEnd('2024-07-12 11:00:00')
23
            ->setLimit(4)
24
        )->execute();
25
26
        echo "Return code: {$indexPriceKlineResponse->getReturnCode()}\n";
27
        echo "Return message: {$indexPriceKlineResponse->getReturnMessage()}\n";
28
29
        /** @var IndexPriceKlineResponseItem $indexItem */
30
        foreach ($indexPriceKlineResponse->getResult()->getKlineList() as $indexItem) {
0 ignored issues
show
Bug introduced by
The method getKlineList() does not exist on Carpenstar\ByBitAPI\Core\Objects\AbstractResponse. It seems like you code against a sub-type of Carpenstar\ByBitAPI\Core\Objects\AbstractResponse such as Carpenstar\ByBitAPI\Deri...\Response\KlineResponse or Carpenstar\ByBitAPI\Deri...IndexPriceKlineResponse or Carpenstar\ByBitAPI\Deri...\MarkPriceKlineResponse. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

30
        foreach ($indexPriceKlineResponse->getResult()->/** @scrutinizer ignore-call */ getKlineList() as $indexItem) {
Loading history...
31
            echo " --- \n";
32
            echo "Start Time: {$indexItem->getStartTime()->format('Y-m-d H:i:s')}\n";
33
            echo "Open Price: {$indexItem->getOpen()}\n";
34
            echo "High Price: {$indexItem->getHigh()}\n";
35
            echo "Low Price: {$indexItem->getLow()}\n";
36
            echo "Close Price: {$indexItem->getClose()}\n";
37
        }
38
39
        $this->assertTrue(true);
40
    }
41
}