Ejemplo n.º 1
0
 public TraderTests()
 {
     _trader       = new Trader(_subscription);
     _orderManager = new OrderManagerSpy(_orderService);
     _trader.AddStrategy(_strategy);
     _trader.SetOrderManager(_orderManager);
 }
Ejemplo n.º 2
0
        public async Task MarketIsLinkedToEachStrategy(string marketId)
        {
            var strategy2 = new StrategySpy();

            _trader.AddStrategy(strategy2);
            await _trader.TradeMarket(marketId, 0, default);

            Assert.Equal(marketId, _strategy.LinkedMarketId());
            Assert.Equal(marketId, strategy2.LinkedMarketId());
        }
Ejemplo n.º 3
0
        public async Task ThrowIfOrderManagerNotSet()
        {
            var emptyTrader = new Trader(_subscription);

            emptyTrader.AddStrategy(_strategy);
            var ex = await Assert.ThrowsAsync <InvalidOperationException>(() => emptyTrader.TradeMarket("MarketId", 0, CancellationToken.None));

            Assert.Equal("Trader must contain an OrderManager.", ex.Message);
        }