Ejemplo n.º 1
0
        public void Setup()
        {
            // забить котировки
            QuoteMaker.FillQuoteStorageWithDefaultValues();
            // словари
            TradeSharpDictionary.Initialize(MoqTradeSharpDictionary.Mock);
            // ордера
            MakeTestOrders();
            // прокси
            var proxyAccount = ProxyBuilder.Instance.MakeImplementer <ITradeSharpAccount>(true);

            ((IMockableProxy)proxyAccount).MockMethods.Add(
                StronglyName.GetMethodName <ITradeSharpAccount>(a => a.GetClosedOrders(0, "", 0, 0)),
                new Func <int, string, int, int, List <MarketOrder> >((accountId, ticker, startId, maxCount) =>
                                                                      testOrders.Where(o => o.Symbol == ticker && o.ID > startId && o.State == PositionState.Closed).Take(maxCount).ToList())
                );
            List <MarketOrder> opOrders;

            ((IMockableProxy)proxyAccount).MockMethods.Add(
                StronglyName.GetMethodName <ITradeSharpAccount>(a => a.GetMarketOrders(0, out opOrders)),
                new GetMarketOrdersDel((int accountId, out List <MarketOrder> resOrders) =>
            {
                resOrders = testOrders.Where(o => o.State == PositionState.Opened).ToList();
                return(RequestStatus.OK);
            })
                );

            TradeSharpAccount.Initialize(proxyAccount);
            // тестовый счет
            AccountStatus.Instance.AccountData = new Account
            {
                Currency = "USD"
            };
        }
Ejemplo n.º 2
0
 public void SetupTest()
 {
     MakeMoq();
     AccountModel.Instance.Initialize(() => new Account
     {
         Balance  = 10000,
         Currency = "USD",
         Equity   = 10000,
         Group    = "Demo",
         ID       = 3,
         Status   = Account.AccountStatus.Created
     },
                                      () => "Demo",
                                      stat => { },
                                      fakeTradeServer, // server proxy
                                      null);           // chat proxy
     AccountStatus.Instance.Login           = "******";
     SubscriptionModel.Instance.ServerProxy = fakeTradeServer;
     TradeSharpAccount.Initialize(fakeTradeAccount);
 }
        public void TestSetup()
        {
            #region Запоминиаем имена методов, которые будем мОчить разными реализациями в ходе тестов
            List <MarketOrder>   voidOrdersList;
            List <BalanceChange> voidBalanceChangesList;
            getHistoryOrdersName  = ProxyBuilder.GetMethodName <ITradeSharpAccount>(a => a.GetHistoryOrders(null, null, out voidOrdersList));
            getMarketOrdersName   = ProxyBuilder.GetMethodName <ITradeSharpAccount>(a => a.GetMarketOrders(0, out voidOrdersList));
            getBalanceChangesName = ProxyBuilder.GetMethodName <ITradeSharpAccount>(a => a.GetBalanceChanges(0, null, out voidBalanceChangesList));
            #endregion


            fakeTradeAccount = ProxyBuilder.Instance.GetImplementer <ITradeSharpAccount>();
            TradeSharpAccount.Initialize(fakeTradeAccount);

            // Инициализируем словарь котировок
            dailyQuoteStorage = new DailyQuoteStorage();
            dailyQuoteStorage.InitializeFake(QuoteMaker.MakeQuotesForQuoteDailyStorage(null));

            SetupMockMethodImplementation();
        }