public async Task ImportData() { var client = _httpClientFactory.CreateClient(); //var response = await client.GetAsync("http://api.marketstack.com/v1/exchanges?access_key=XXX"); //response.EnsureSuccessStatusCode(); //var json = await response.Content.ReadAsStringAsync(); //var data = JsonConvert.DeserializeObject<ExchangeResponse>(json); //var markets = data.data.Select(x => new StockMarketEntity //{ // Name = x.name, // Acronym = x.acronym, // IdentifierCode = x.mic, // Currency = x.currency, // Country = x.country, // City = x.city //}); //await _context.StockMarkets.AddRangeAsync(markets); //await _context.SaveChangesAsync(); //foreach(var stock in markets) //{ // response = await client.GetAsync($"http://api.marketstack.com/v1/tickers?access_key=XXX&exchange={stock.IdentifierCode}"); // response.EnsureSuccessStatusCode(); // json = await response.Content.ReadAsStringAsync(); // var tickerData = JsonConvert.DeserializeObject<TickerResponse>(json); // var tickers = tickerData.data.Select(x => new TickerEntity // { // Name = x.name, // StockIdentifierCode = x.stock_exchange.mic, // Symbol = x.symbol // }); // await _context.AddRangeAsync(tickers); // await _context.SaveChangesAsync(); //} foreach (var ticker in _context.Tickers.Where(x => x.StockIdentifierCode == "XNAS" || x.StockIdentifierCode == "XNYS" || x.StockIdentifierCode == "XWAR")) { var response = await client.GetAsync($"http://api.marketstack.com/v1/eod?access_key=XXX&limit=7&offset=7&symbols={ticker.Symbol}"); response.EnsureSuccessStatusCode(); var json = await response.Content.ReadAsStringAsync(); var endOfDays = JsonConvert.DeserializeObject <EodResponse>(json); await _context.EndOfDays.AddRangeAsync(endOfDays.data); } await _context.SaveChangesAsync(); }
public async Task Test_Query_Trades() { //Arrange var trade = new Trade { Symbol = "REL", NoOfShares = 12, Price = 98.76m, PortfolioId = 1, Action = "Buy" }; //Act _testDBContext.Add(trade); await _testDBContext.SaveChangesAsync(); var result = await _tradeRepository.Query().ToListAsync(); // Assert Assert.True(result.Count > 0); }