public void SetAllocationHappyFlow() { var alloc = new AllocationManager(LoggerFactory, _fetcher, null); var currency = new Currency("ETH"); alloc.SetInitialConfiguration(new Portfolio(new Dictionary <Currency, Balance>() { { currency, new Balance(currency, 2, 0) }, })); Assert.Equal(2, alloc.GetAvailableFunds(currency).Free); Assert.Equal(0, alloc.GetAvailableFunds(currency).Locked); }
public void ValidateAllocationsSetRequired() { var allocationManager = new AllocationManager(LoggerFactory, _fetcher, null); Currency c = new Currency("ETH"); Assert.Throws <ArgumentNullException>(() => allocationManager.GetAvailableFunds(c)); Assert.Throws <ArgumentNullException>(() => allocationManager.GetAllFunds()); Assert.Throws <ArgumentNullException>(() => allocationManager.QueueTrade( new TradeProposal(TradingPair.Parse("EOSETH"), new Balance(c, 10, 10)), () => new OrderUpdate( orderId: 0, tradeId: 0, orderStatus: OrderUpdate.OrderStatus.New, orderType: OrderUpdate.OrderTypes.Limit, createdTimestamp: 0, setPrice: 0, side: OrderSide.Buy, pair: TradingPair.Parse("EOSETH"), setQuantity: 0))); }