Test Failed
Pull Request — master (#22)
by Vladislav
02:33
created

PlaceOrderTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 18
c 3
b 0
f 0
dl 0
loc 37
rs 10
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A testSuccessEndpoint() 0 35 2
1
<?php
2
3
namespace Carpenstar\ByBitAPI\Derivatives\Contract\Order\PlaceOrder\Tests;
4
5
use Carpenstar\ByBitAPI\BybitAPI;
6
use Carpenstar\ByBitAPI\Core\Enums\EnumOrderType;
7
use Carpenstar\ByBitAPI\Core\Enums\EnumSide;
8
use Carpenstar\ByBitAPI\Core\Interfaces\IResponseInterface;
9
use Carpenstar\ByBitAPI\Derivatives\Contract\Order\PlaceOrder\PlaceOrder;
10
use Carpenstar\ByBitAPI\Derivatives\Contract\Order\PlaceOrder\Request\PlaceOrderRequest;
11
use Carpenstar\ByBitAPI\Derivatives\Contract\Order\PlaceOrder\Response\PlaceOrderResponse;
12
use PHPUnit\Framework\TestCase;
13
14
class PlaceOrderTest extends TestCase
15
{
16
    public function testSuccessEndpoint()
17
    {
18
        echo "\n //// --- //// \n";
19
        
20
        $bybitApi = (new BybitAPI())->setCredentials('https://api-testnet.bybit.com', 'fL02oi5qo8i2jDxlum', 'Ne1EE35XTprIWrId9vGEAc1ZYJTmodA4qFzZ');
21
22
        /** @var IResponseInterface $response */
23
        $response = $bybitApi->privateEndpoint(PlaceOrder::class, 
24
            (new PlaceOrderRequest())->setSymbol('BTCUSDT')->setOrderType(EnumOrderType::LIMIT)->setSide(EnumSide::BUY)->setQty('0.01')->setPrice(68100)
0 ignored issues
show
Bug introduced by
'0.01' of type string is incompatible with the type double expected by parameter $quantity of Carpenstar\ByBitAPI\Deri...eOrderRequest::setQty(). ( Ignorable by Annotation )

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

24
            (new PlaceOrderRequest())->setSymbol('BTCUSDT')->setOrderType(EnumOrderType::LIMIT)->setSide(EnumSide::BUY)->setQty(/** @scrutinizer ignore-type */ '0.01')->setPrice(68100)
Loading history...
25
        )->execute();
26
27
        if ($response->getReturnCode() == 0) {
28
            echo "CODE: {$response->getReturnCode()} \n";
29
            echo "MESSAGE: {$response->getReturnMessage()} \n";    
30
31
            /** @var PlaceOrderResponse $orderInfo */
32
            $orderInfo = $response->getResult();
33
            echo "Order ID: {$orderInfo->getOrderId()}\n";
34
            echo "Order Link ID: {$orderInfo->getOrderLinkId()}\n";
35
36
        /**
37
         * Return code: 0
38
         * Return message: OK
39
         * Order ID: bac5bf12-edf6-433b-8ce4-d4d14de281cd
40
         * Order Link ID:
41
        */
42
43
        } else {
44
            echo "API ERORR: " . get_class($this) . "\n";
45
            echo "CODE: {$response->getReturnCode()} \n"; 
46
            echo "MESSAGE: {$response->getReturnMessage()} \n"; 
47
            echo "EXTENDED:" . implode(";\n", $response->getExtendedInfo()) . "\n"; 
48
        }
49
50
        $this->assertTrue(true);
51
    }
52
}
53