Ejemplo n.º 1
0
        public ExchangeHubTests()
        {
            var fileRepo = new FileRepository.FileRepository();
            var apiInfo  = fileRepo.GetDataFromFile <ApiInformation>("config.json");

            hub = new ExchangeHub(Exchange.Binance, apiInfo.ApiKey, apiInfo.ApiSecret);
        }
Ejemplo n.º 2
0
        public ExchangeBuilderTests()
        {
            testObjs = new TestObjects();
            var fileRepo = new FileRepository.FileRepository();
            //var apiInfo = fileRepo.GetDataFromFile<Cryptobitfolio.Business.Entities.Trade.ExchangeApi>("config.json");
            //var apiInfoList = new List<Cryptobitfolio.Business.Entities.Trade.ExchangeApi> { apiInfo };
            var exchangeApiRepoMock = new Mock <IExchangeApiRepository>();

            exchangeApiRepoMock.Setup(m => m.Get()).Returns(Task.FromResult(testObjs.GetEntityExchangeApis()));
            exchangeApiRepoMock.Setup(m => m.Get(It.IsAny <Expression <Func <Cryptobitfolio.Business.Entities.Trade.ExchangeApi, bool> > >()))
            .Returns(Task.FromResult(testObjs.GetEntityExchangeApis(Cryptobitfolio.Business.Entities.Exchange.Binance)));
            exchangeApiRepoMock.Setup(m => m.Delete(It.IsAny <Cryptobitfolio.Business.Entities.Trade.ExchangeApi>()))
            .Returns(Task.FromResult(true));
            exchangeApiRepoMock.Setup(m => m.Add(It.IsAny <Cryptobitfolio.Business.Entities.Trade.ExchangeApi>()))
            .Returns(Task.FromResult(testObjs.GetEntityExchangeApis().First()));
            exchangeApiRepoMock.Setup(m => m.Update(It.IsAny <Cryptobitfolio.Business.Entities.Trade.ExchangeApi>()))
            .Returns(Task.FromResult(testObjs.GetUpdatedExchangeApi()));
            var exchangeUpdateRepoMock = new Mock <IExchangeUpdateRepository>();
            var exchangeApiBldrMock    = new Mock <IExchangeApiBuilder>();
            var arbitrageRepoMock      = new Mock <IArbitragePathRepository>();
            var arbitrageBldrMock      = new Mock <IArbitrageBuilder>();
            var exchangeHubRepo        = new Mock <IExchangeHubRepository>();
            var cmcBldr = new Mock <ICMCBuilder>();

            exchangeHubRepo.Setup(m => m.GetBalances())
            .Returns(Task.FromResult(testObjs.GetExchangeHubBalances()));
            exchangeHubRepo.SetupSequence(m => m.GetOrders(It.IsAny <string>()))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("BTCUSDT"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("ETHUSDT"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("ETHBTC"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("XLMBTC"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("XLMETH"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("XLMUSDT"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("NANOBTC"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOrders().Where(o => o.Pair.Equals("NANOETH"))));
            exchangeHubRepo.Setup(m => m.GetExchange())
            .Returns(testObjs.GetExchangeHubExchange());
            exchangeHubRepo.Setup(m => m.GetMarkets())
            .Returns(Task.FromResult(testObjs.GetExchangeHubMarkets()));
            exchangeHubRepo.SetupSequence(m => m.GetOpenOrders(It.IsAny <string>()))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("BTCUSDT"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("ETHUSDT"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("ETHBTC"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("XLMBTC"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("XLMETH"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("XLMUSDT"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("NANOBTC"))))
            .Returns(Task.FromResult(testObjs.GetExchangeHubOpenOrders().Where(o => o.Pair.Equals("NANOETH"))));
            exchangeApiBldrMock.Setup(m => m.Get())
            .Returns(Task.FromResult(testObjs.GetContractExchangeApis()));
            cmcBldr.Setup(m => m.GetCurrencies(It.IsAny <List <string> >()))
            .Returns(Task.FromResult(testObjs.GetCurrencies()));

            exchangeBuilder = new ExchangeBuilder(exchangeApiBldrMock.Object, exchangeUpdateRepoMock.Object, arbitrageRepoMock.Object, arbitrageBldrMock.Object, exchangeHubRepo.Object, cmcBldr.Object);
        }