public void HandleResponse_Subscribed_StreamUpdated() { var triggered = false; var client = InitializeAccountClient(); client.Streams.SubscribeResponseStream.Subscribe( msg => { triggered = true; // Assert Assert.NotNull(msg); Assert.True(msg.Code > 0); Assert.True(!string.IsNullOrEmpty(msg.Channel)); }); var message = HuobiAccountMessagesFactory.CreateSubscribeResponseMessage(); // Act TriggerMessageReceive(message); // Assert VerifyMessageNotUnhandled(); Assert.True(triggered); }
public void AccountUpdateMessage_AvailableBalanceChanged_StreamUpdated( string changeType, string accountType) { // Arrange var changeTime = DateTimeOffset.UtcNow; var triggered = false; var client = InitializeAccountClient(); client.Streams.AccountUpdateMessageStream.Subscribe( msg => { triggered = true; // Assert Assert.NotNull(msg); Assert.NotNull(msg.Data); Assert.True(EnumTestDataBase.EqualsWithString(changeType, msg.Data !.ChangeType)); Assert.True(EnumTestDataBase.EqualsWithString(accountType, msg.Data !.AccountType)); Assert.True(TestUtils.UnixTimesEqual(changeTime, msg.Data !.ChangeTime)); }); var message = HuobiAccountMessagesFactory.CreateAccountUpdateAvailableBalanceChangedMessage( changeType, accountType, changeTime); // Act TriggerMessageReceive(message); // Assert VerifyMessageNotUnhandled(); Assert.True(triggered); }
public void OrderSubmittedMessage_StreamUpdated(string orderType) { // Arrange var lastActTime = DateTimeOffset.UtcNow; var triggered = false; var client = InitializeAccountClient(); client.Streams.OrderSubmittedMessageStream.Subscribe( msg => { triggered = true; // Assert Assert.NotNull(msg); Assert.NotNull(msg.Data); Assert.Equal(OrderEventType.Creation, msg.Data !.EventType); Assert.Equal(OrderStatus.Submitted, msg.Data !.OrderStatus); Assert.True(EnumTestDataBase.EqualsWithString(orderType, msg.Data !.Type)); Assert.True(TestUtils.UnixTimesEqual(lastActTime, msg.Data !.OrderCreateTime)); }); var message = HuobiAccountMessagesFactory.CreateOrderSubmittedMessage(orderType, lastActTime); // Act TriggerMessageReceive(message); // Assert VerifyMessageNotUnhandled(); Assert.True(triggered); }
public void TradeDetailsMessage_StreamUpdated( string eventType, string orderSide, string orderType, string orderStatus) { // Arrange var tradeAndCreateTime = DateTimeOffset.UtcNow; var triggered = false; var client = InitializeAccountClient(); client.Streams.TradeDetailsMessageStream.Subscribe( msg => { triggered = true; // Assert Assert.NotNull(msg); Assert.NotNull(msg.Data); Assert.True(EnumTestDataBase.EqualsWithString(eventType, msg.Data !.EventType)); Assert.True(EnumTestDataBase.EqualsWithString(orderSide, msg.Data !.OrderSide)); Assert.True(EnumTestDataBase.EqualsWithString(orderType, msg.Data !.OrderType)); Assert.True(EnumTestDataBase.EqualsWithString(orderStatus, msg.Data !.OrderStatus)); Assert.True(TestUtils.UnixTimesEqual(tradeAndCreateTime, msg.Data !.TradeTime)); Assert.True(TestUtils.UnixTimesEqual(tradeAndCreateTime, msg.Data !.OrderCreateTime)); }); var message = HuobiAccountMessagesFactory.CreateTradeDetailsMessage( eventType, orderSide, orderType, orderStatus, tradeAndCreateTime); // Act TriggerMessageReceive(message); // Assert VerifyMessageNotUnhandled(); Assert.True(triggered); }
public void HandleResponse_SubscribeErrorMessage_StreamUpdated(AccountSubscriptionType subscriptionType) { var triggered = false; var client = InitializeAccountClient(); client.Streams.AccountErrorMessageStream.Subscribe( msg => { triggered = true; // Assert Assert.NotNull(msg); }); var message = HuobiAccountMessagesFactory.CreateSubscribeErrorMessage(subscriptionType); // Act TriggerMessageReceive(message); // Assert VerifyMessageNotUnhandled(); Assert.True(triggered); }