public void Setup() { stockAPIService = Substitute.For <StockAPIService>(new RemoteURLReader()); stockAPIService.GetPrice(Arg.Any <string>()).Returns(150); logger = Substitute.For <Logger>(); trader = new Trader(stockAPIService, logger); }
public static Trader Instance() { if (_instance == null) { var stockApiService = StockAPIService.Instance(); _instance = new Trader(stockApiService); } return(_instance); }
public static void Main(string[] args) { Logger logger = new Logger(); RemoteURLReader remoteURLReader = new RemoteURLReader(); StockAPIService stockAPIService = new StockAPIService(remoteURLReader); Trader trader = new Trader(stockAPIService, logger); TradingApp app = new TradingApp(trader, logger); app.Start(); }
public static void Main(string[] args) { ILogger logger = new Logger(); IUrlReader urlReader = new RemoteURLReader(); IApiService apiService = new StockAPIService(urlReader); ITrader trader = new Trader(logger, apiService); TradingApp app = new TradingApp(logger, trader, urlReader, apiService); app.Start(); }
public static StockAPIService Instance() { if (_instance == null) { //string apiPath = "https://financialmodelingprep.com/api/v3/stock/real-time-price/{0}"; string apiPath = "http://www.test.com/{0}"; var reader = RemoteURLReader.Instance(); _instance = new StockAPIService(apiPath, reader); } return(_instance); }
[Test] // readFromURL returned wrong JSON public void TestGetPriceMalformedResponse() { //arrange var stockApi = StockAPIService.Instance(); var dummy = "dummy"; //act _reader.ReadFromUrl(dummy).Throws(new Newtonsoft.Json.JsonReaderException()); stockApi.Reader = _reader; stockApi.APIPath = dummy; //assert Assert.Throws <Newtonsoft.Json.JsonReaderException>(() => stockApi.GetPrice("aapl")); }
public void SetUp() { remoteURLReader = Substitute.For <RemoteURLReader>(); stockAPIService = new StockAPIService(remoteURLReader); }
public Trader(StockAPIService stockApiService, Logger logger) { _stockApiService = stockApiService; _logger = logger; }