Move Bitcoinity websocket capture, and test it.
All checks were successful
Build & Test / Main (push) Successful in 57s
All checks were successful
Build & Test / Main (push) Successful in 57s
This commit is contained in:
217
bitcoinity/captured.json
Normal file
217
bitcoinity/captured.json
Normal file
@@ -0,0 +1,217 @@
|
||||
[
|
||||
{
|
||||
"event": "phx_join",
|
||||
"payload": {},
|
||||
"ref": "1",
|
||||
"topic": "all"
|
||||
},
|
||||
{
|
||||
"event": "phx_join",
|
||||
"payload": {},
|
||||
"ref": "2",
|
||||
"topic": "webs:markets"
|
||||
},
|
||||
{
|
||||
"event": "phx_join",
|
||||
"payload": {},
|
||||
"ref": "3",
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "phx_reply",
|
||||
"payload": {
|
||||
"response": {},
|
||||
"status": "ok"
|
||||
},
|
||||
"ref": "1",
|
||||
"topic": "all"
|
||||
},
|
||||
{
|
||||
"event": "phx_reply",
|
||||
"payload": {
|
||||
"response": {},
|
||||
"status": "ok"
|
||||
},
|
||||
"ref": "2",
|
||||
"topic": "webs:markets"
|
||||
},
|
||||
{
|
||||
"event": "phx_reply",
|
||||
"payload": {
|
||||
"response": {},
|
||||
"status": "ok"
|
||||
},
|
||||
"ref": "3",
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 7.626e-5,
|
||||
"date": 1710454598.412,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71296.64
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 2.1277e-4,
|
||||
"date": 1710454598.529,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71296.51
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 9.298e-5,
|
||||
"date": 1710454598.571,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71290.31
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 0.0280536,
|
||||
"date": 1710454599.14,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71282.41
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 0.00179797,
|
||||
"date": 1710454599.739,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71279.04
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 6.6664e-4,
|
||||
"date": 1710454599.969,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71279.03
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 0.00269708,
|
||||
"date": 1710454600.174,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71278.99
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 0.00707958,
|
||||
"date": 1710454600.722,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71268.25
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 1.6783e-4,
|
||||
"date": 1710454600.955,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71273.11
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
},
|
||||
{
|
||||
"event": "new_msg",
|
||||
"payload": {
|
||||
"data": {
|
||||
"currency": "USD",
|
||||
"exchange_name": "coinbase",
|
||||
"trade": {
|
||||
"amount": 0.00134701,
|
||||
"date": 1710454601.033,
|
||||
"exchange_name": "coinbase",
|
||||
"price": 71274.89
|
||||
}
|
||||
}
|
||||
},
|
||||
"ref": null,
|
||||
"topic": "webs:markets_coinbase_USD"
|
||||
}
|
||||
]
|
@@ -21,3 +21,24 @@ func TestUnmarshalGetTickerResponse(t *testing.T) {
|
||||
|
||||
//go:embed get_ticker.json
|
||||
var getTickerJson []byte
|
||||
|
||||
func TestUnmarshalWebhookMessages(t *testing.T) {
|
||||
var msgs []bitcoinity.Message
|
||||
err := json.Unmarshal(capturedJson, &msgs)
|
||||
if err != nil {
|
||||
t.Errorf("failed to unmarshal webhook messages JSON: %v", err)
|
||||
}
|
||||
for _, msg := range msgs {
|
||||
if msg.Event != "new_msg" {
|
||||
continue
|
||||
}
|
||||
var payload bitcoinity.MarketPayload
|
||||
err := json.Unmarshal(msg.Payload, &payload)
|
||||
if err != nil {
|
||||
t.Errorf("failed to unmarshal market payload JSON: %v", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//go:embed captured.json
|
||||
var capturedJson []byte
|
||||
|
Reference in New Issue
Block a user