public void SubscribeToKlineUpdates_Should_TriggerWithKlineUpdate() { // arrange var socket = new TestSocket(); socket.CanConnect = true; var client = TestHelpers.CreateSocketClient(socket); HuobiSymbolData result = null; var subTask = client.SubscribeToKlineUpdatesAsync("ETHBTC", HuobiPeriod.FiveMinutes, test => result = test); socket.InvokeMessage($"{{\"subbed\": \"ethbtc\", \"id\": \"{BaseClient.LastId}\", \"status\": \"ok\"}}"); var subResult = subTask.Result; var expected = new HuobiSymbolData() { Amount = 0.1m, Close = 0.2m, Low = 0.3m, High = 0.4m, Volume = 0.5m, Open = 0.6m, TradeCount = 12 }; // act socket.InvokeMessage(SerializeExpected("market.ethbtc.kline.5min", expected)); // assert Assert.IsTrue(subResult.Success); Assert.IsTrue(TestHelpers.AreEqual(expected, result)); }
public void SubscribeToDetailUpdates_Should_TriggerWithDetailUpdate() { // arrange var socket = new TestSocket(); socket.CanConnect = true; var client = TestHelpers.CreateSocketClient(socket); HuobiSymbolData result = null; var subTask = client.SubscribeToSymbolDetailUpdatesAsync("ETHBTC", test => result = test.Data); var id = JToken.Parse(socket.LastSendMessage)["id"]; socket.InvokeMessage($"{{\"subbed\": \"ethbtc\", \"id\": \"{id}\", \"status\": \"ok\"}}"); var subResult = subTask.Result; var expected = new HuobiSymbolData() { Quantity = 0.1m, Close = 0.2m, Low = 0.3m, High = 0.4m, Volume = 0.5m, Open = 0.6m, TradeCount = 12 }; // act socket.InvokeMessage(SerializeExpected("market.ethbtc.detail", expected)); // assert Assert.IsTrue(subResult.Success); Assert.IsTrue(TestHelpers.AreEqual(expected, result)); }
public async Task GetMarketDetails24H_Should_RespondWithDetails24H() { // arrange var expected = new HuobiSymbolData { Close = 0.1m, Low = 0.2m, Quantity = 0.3m, Open = 0.4m, High = 0.5m, Volume = 0.6m, TradeCount = 123 }; var client = TestHelpers.CreateResponseClient(SerializeExpected(expected, true)); // act var result = await client.GetSymbolDetails24HAsync("BTCETH"); // assert Assert.AreEqual(true, result.Success); Assert.IsTrue(TestHelpers.AreEqual(expected, result.Data, "Details")); }