Closed galic1987 closed 4 years ago
@galic1987:
It is very hard to create meaningful unit tests since most of the code relies on exchange connectivity and none of the exchanges provide stubs. Generally, the best developers can do is to make sure that their code maps known examples of websocket data.
There are "example" classes for manual testing, which are usually used by developers when working on changes, but running them on Travis would make the build fail half the time. I've been there with my own project - having to bypass tests to try and get a fix out during a 6-hour Binance outage is no fun.
So I have created a BEAM pipeline example using this library Article: https://medium.com/@igalic/bigtable-beam-dataflow-cryptocurrencies-gcp-terraform-java-maven-4e7873811e86 Github: https://github.com/GoogleCloudPlatform/professional-services/tree/master/examples/cryptorealtime
Please include it in the examples section
Thx
@badgerwithagun
@galic1987 - do you mean add it to this section of the README?
If so, just submit a pull request.
I tested the 4.3.11 trades API with BTC_USD(T) and I can confirm the following working:
Rest: Binance: Exception in thread "main" java.lang.IllegalArgumentException: Subscriptions must be made at connection time Can we merge this? https://github.com/bitrich-info/xchange-stream/issues/140
BitMex: INFO: Disconnected from the Exchange (after 10 seconds)
Poloniex : Just hangs in there
CexIO: Feature not yet implemented for exchange.
GDax: The ProductSubscription must be defined!
Bitflyer: INFO: Disconnected from the Exchange (after 10 seconds)
Wex: we can remove this one
Questions: 1) Did anyone tried contacting the exchanges to see if they would like provide developers for the project? It is in their interest. 2) Can we create some simple unit tests?