github.com/frankrap/okex-api@v1.0.4/spot_rest_api_test.go (about) 1 package okex 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestGetSpotAccounts(t *testing.T) { 11 c := NewTestClient() 12 ac, err := c.GetSpotAccounts() 13 14 fmt.Printf("%+v, %+v", ac, err) 15 16 assert.True(t, err == nil) 17 jstr, _ := Struct2JsonString(ac) 18 println(jstr) 19 } 20 21 func TestGetSpotAccountsCurrency(t *testing.T) { 22 c := NewTestClient() 23 ac, err := c.GetSpotAccountsCurrency("BTC") 24 assert.True(t, err == nil) 25 jstr, _ := Struct2JsonString(ac) 26 println(jstr) 27 } 28 29 func TestGetSpotAccountsCurrencyLeger(t *testing.T) { 30 c := NewTestClient() 31 ac, err := c.GetSpotAccountsCurrencyLeger("btc", nil) 32 assert.True(t, err == nil) 33 jstr, _ := Struct2JsonString(ac) 34 println(jstr) 35 36 options := map[string]string{} 37 options["from"] = "1" 38 options["to"] = "2" 39 options["limit"] = "100" 40 41 ac2, err2 := c.GetSpotAccountsCurrencyLeger("btc", &options) 42 assert.True(t, ac2 != nil && err2 == nil) 43 } 44 45 func TestGetSpotOrders(t *testing.T) { 46 c := NewTestClient() 47 ac, err := c.GetSpotOrders("filled", "BTC-USDT", nil) 48 assert.True(t, err == nil) 49 jstr, _ := Struct2JsonString(ac) 50 println(jstr) 51 52 // Fore. 20190305. TODO: {"message":"System error"} returned by following request. 53 // Url: http://coinmainweb.new.docker.okex.com/api/spot/v3/fills?instrument_id=BTC-USDT&order_id=2365709152770048 54 filledOrderId := (*ac)[0]["order_id"].(string) 55 sf, err := c.GetSpotFills(filledOrderId, "BTC-USDT", nil) 56 assert.True(t, sf != nil && err == nil) 57 } 58 59 func TestGetSpotOrdersPending(t *testing.T) { 60 c := NewTestClient() 61 ac, err := c.GetSpotOrdersPending(nil) 62 assert.True(t, err == nil) 63 jstr, _ := Struct2JsonString(ac) 64 println(jstr) 65 66 options := NewParams() 67 options["instrument_id"] = "BTC-USDT" 68 ac, err = c.GetSpotOrdersPending(&options) 69 assert.True(t, err == nil) 70 jstr, _ = Struct2JsonString(ac) 71 println(jstr) 72 73 testOrderId := (*ac)[0]["order_id"] 74 _, err = c.GetSpotOrdersById("BTC-USDT", testOrderId.(string)) 75 assert.True(t, err == nil) 76 } 77 78 func TestGetSpotInstruments(t *testing.T) { 79 c := NewTestClient() 80 ac, err := c.GetSpotInstruments() 81 assert.True(t, err == nil) 82 jstr, _ := Struct2JsonString(ac) 83 println(jstr) 84 } 85 86 func TestGetSpotInstrumentBook(t *testing.T) { 87 c := NewTestClient() 88 ac, err := c.GetSpotInstrumentBook("LTC-USDT", nil) 89 assert.True(t, err == nil) 90 jstr, _ := Struct2JsonString(ac) 91 println(jstr) 92 } 93 94 func TestGetSpotInstrumentsTicker(t *testing.T) { 95 c := NewTestClient() 96 ac, err := c.GetSpotInstrumentsTicker() 97 assert.True(t, err == nil) 98 jstr, _ := Struct2JsonString(ac) 99 println(jstr) 100 } 101 102 func TestGetSpotInstrumentTicker(t *testing.T) { 103 c := NewTestClient() 104 ac, err := c.GetSpotInstrumentTicker("LTC-USDT") 105 assert.True(t, err == nil) 106 jstr, _ := Struct2JsonString(ac) 107 println(jstr) 108 } 109 110 func TestGetSpotInstrumentTrade(t *testing.T) { 111 c := NewTestClient() 112 _, ac, err := c.GetSpotInstrumentTrade("BTC-USDT", nil) 113 assert.True(t, err == nil) 114 jstr, _ := Struct2JsonString(ac) 115 println(jstr) 116 117 options := map[string]string{} 118 options["from"] = "1" 119 options["to"] = "2" 120 options["limit"] = "100" 121 122 _, ac2, err := c.GetSpotInstrumentTrade("BTC-USDT", &options) 123 assert.True(t, err == nil) 124 jstr, _ = Struct2JsonString(ac2) 125 println(jstr) 126 } 127 128 func TestGetSpotInstrumentCandles(t *testing.T) { 129 c := NewTestClient() 130 _, ac, err := c.GetSpotInstrumentCandles("BTC-USDT", nil) 131 assert.True(t, err == nil) 132 jstr, _ := Struct2JsonString(ac) 133 println(jstr) 134 } 135 136 func TestPostSpotOrders(t *testing.T) { 137 c := NewTestClient() 138 139 optionals := NewParams() 140 optionals["type"] = "limit" 141 optionals["price"] = "100" 142 optionals["size"] = "0.01" 143 144 _, r0, err := c.PostSpotOrders("sell", "btc-usdt", &optionals) 145 assert.True(t, err == nil) 146 jstr, _ := Struct2JsonString(r0) 147 println(jstr) 148 149 orderId := r0.OrderID 150 _, r, err := c.PostSpotCancelOrders("btc-usdt", orderId) 151 assert.True(t, r != nil && err == nil) 152 jstr, _ = Struct2JsonString(r) 153 println(jstr) 154 155 } 156 157 func TestClient_PostSpotBatchOrders(t *testing.T) { 158 c := NewTestClient() 159 160 orderInfos := []map[string]string{ 161 map[string]string{"client_oid": "w20180728w", "instrument_id": "btc-usdt", "side": "sell", "type": "limit", "size": "0.001", "price": "10001", "margin_trading ": "1"}, 162 map[string]string{"client_oid": "r20180728r", "instrument_id": "btc-usdt", "side": "sell", "type": "limit", " size ": "0.001", "notional": "10002", "margin_trading ": "1"}, 163 } 164 165 _, r, err := c.PostSpotBatchOrders(&orderInfos) 166 assert.True(t, r != nil && err == nil) 167 jstr, _ := Struct2JsonString(r) 168 println(jstr) 169 } 170 171 func TestClient_PostSpotCancelBatchOrders(t *testing.T) { 172 c := NewTestClient() 173 174 orderInfos := []map[string]interface{}{ 175 map[string]interface{}{"instrument_id": "btc-usdt", "client_oid": "16ee593327162368"}, 176 map[string]interface{}{"instrument_id": "ltc-usdt", "client_oid": "243464oo234465"}, 177 } 178 179 _, r, err := c.PostSpotCancelBatchOrders(&orderInfos) 180 assert.True(t, r != nil && err == nil) 181 jstr, _ := Struct2JsonString(r) 182 println(jstr) 183 }