コード例 #1
0
        public async Task ShouldCallCopyFileWithMetadataLocation()
        {
            var mockOpenOrderManager = new Mock <IOpeningOrderManager>();

            mockOpenOrderManager.Setup(x => x.PlaceOpeningOrder(It.IsAny <TradeDetail>(), It.IsAny <IEnumerable <TradeDetail> >())).Returns(Task.FromResult(new OpenOrderResult(null, null)));

            var mockManagerFactory = new Mock <IManagerFactory>();

            mockManagerFactory.Setup(x => x.GetStrategyTradeManagerPair(It.IsAny <Guid>())).Returns(new ManagerPair(mockOpenOrderManager.Object, null));

            var mockTradeStore = new Mock <ITradeStore>();

            var mockConsole = new Mock <IConsole>();

            var mockFile = new Mock <IFile>();

            var tradeMessageProcessor = new TradeMessageProcessor(mockManagerFactory.Object, mockTradeStore.Object, mockConsole.Object, mockFile.Object);

            await tradeMessageProcessor.ProcessMessage(new TradeDetail()
            {
                Match = new TradePlacement.Models.Match()
                {
                    WhoScoredData = new MatchDetail()
                    {
                        MatchMetadataLocation = "ABC"
                    }
                }
            });

            mockFile.Verify(x => x.Copy(It.Is <string>(y => y == "ABC"), It.IsAny <string>()), Times.Once);
        }
コード例 #2
0
 private async Task RunTrade(TradeDetail trade)
 {
     var messageProcessor = new TradeMessageProcessor(new ManagerFactory(_console), new TradeStore(), _console, _file);
     await messageProcessor.ProcessMessage(trade);
 }