public static ExternalExchangeOrderbookMessage GetOrderbookMessage(this IOaTestEnvironment testEnvironment, string exchangeName, Generator <decimal> decimals, string assetPairId = "BTCUSD") { return(new ExternalExchangeOrderbookMessage { Bids = new List <VolumePrice> { new VolumePrice { Price = decimals.Next(), Volume = decimals.Next() }, new VolumePrice { Price = decimals.Next(), Volume = decimals.Next() } }, Asks = new List <VolumePrice> { new VolumePrice { Price = decimals.Next(), Volume = decimals.Next() }, new VolumePrice { Price = decimals.Next(), Volume = decimals.Next() } }, AssetPairId = assetPairId, ExchangeName = exchangeName, Timestamp = testEnvironment.UtcNow, }); }
public static OrderbookStatusModel MakeOrderbookStatusModel(this IOaTestEnvironment env, string exchangeName, string assetPairId, decimal multiplier) { return(new OrderbookStatusModel { Status = OrderbookStatusEnum.Valid.ToString(), BidsDepth = 2, AsksDepth = 2, ResultingsAsksDepth = 2, ResultingsBidsDepth = 2, AssetPairId = assetPairId, ExchangeName = exchangeName, LastUpdateTime = env.UtcNow, BestBid = 3 * multiplier, BestAsk = 5 * multiplier, ResultingBestBid = 3 * multiplier, ResultingBestAsk = 5 * multiplier, }); }
private static void VerifyMessagesSentCore(this IOaTestEnvironment testEnvironment, IEnumerable <object> messages, Func <EquivalencyAssertionOptions <object>, EquivalencyAssertionOptions <object> > config) { var sent = testEnvironment.StubRabbitMqService.GetSentMessages(); var expected = messages.ToArray(); sent.Should().HaveCount(expected.Length); for (var i = 0; i < expected.Length; i++) { var sentMessage = sent[i]; var expectedMessage = expected[i]; if (expectedMessage is StartedMessage) { sentMessage.Should().BeOfType <StartedMessage>(); } else { sentMessage.Should().BeEquivalentTo(expectedMessage); } } }
public static DateTime SleepSecs(this IOaTestEnvironment env, double seconds) { return(env.Sleep(TimeSpan.FromSeconds(seconds))); }
public static DateTime Sleep(this IOaTestEnvironment env, TimeSpan time) { return(env.UtcNow += time); }
public static StartedMessage GetStartedMessage(this IOaTestEnvironment testEnvironment) { return(new StartedMessage()); }
public static void VerifyMessagesSentWithTime(this IOaTestEnvironment testEnvironment, params object[] messages) { VerifyMessagesSentCore(testEnvironment, messages, o => o); }
public static void VerifyMessagesSent(this IOaTestEnvironment testEnvironment, params object[] messages) { VerifyMessagesSentCore(testEnvironment, messages, o => o .Excluding(i => i.SelectedMemberPath.EndsWith(".Timestamp", StringComparison.OrdinalIgnoreCase))); }