public async Task GetAllStocksInDateRange() { var mockRepository = new MockRepository(MockBehavior.Strict); var stocks = new List <StockResponse>() { new StockResponse() { Id = Guid.NewGuid(), AsxCode = "ABC" }, new StockResponse() { Id = Guid.NewGuid(), AsxCode = "AYZ" } }; var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.GetAsync <List <StockResponse> >(It.Is <string>(x => x == "stocks?fromdate=2000-01-02&todate=2010-05-06"))) .Returns(Task <List <StockResponse> > .FromResult(stocks)) .Verifiable(); var resource = new StockResource(messageHandler.Object); var result = await resource.Get(new DateRange(new Date(2000, 01, 02), new Date(2010, 05, 06))); result.Should().BeEquivalentTo(stocks); mockRepository.Verify(); }
public async Task ChangeDividendRules() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.PostAsync <ChangeDividendRulesCommand>( It.Is <string>(x => x == "stocks/" + stockId + "/changedividendrules"), It.Is <ChangeDividendRulesCommand>(x => x.Id == stockId && x.CompanyTaxRate == 0.45m))) .Returns(Task.CompletedTask) .Verifiable(); var resource = new StockResource(messageHandler.Object); var change = new ChangeDividendRulesCommand() { Id = stockId, CompanyTaxRate = 0.45m }; await resource.ChangeDividendRules(change); mockRepository.Verify(); }
public async Task ChangeReleativeNTAs() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.PostAsync <ChangeRelativeNtaCommand>( It.Is <string>(x => x == "stocks/" + stockId + "/changerelativenta"), It.Is <ChangeRelativeNtaCommand>(x => x.Id == stockId && x.RelativeNtas.Count == 1))) .Returns(Task.CompletedTask) .Verifiable(); var resource = new StockResource(messageHandler.Object); var change = new ChangeRelativeNtaCommand() { Id = stockId, }; change.AddRelativeNta("XYZ", 0.50m); await resource.ChangeRelativeNTAs(change); mockRepository.Verify(); }
public async Task UpdateClosingPrices() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.PostAsync <UpdateClosingPricesCommand>( It.Is <string>(x => x == "stocks/" + stockId + "/closingprices"), It.Is <UpdateClosingPricesCommand>(x => x.Id == stockId && x.ClosingPrices.Count == 1))) .Returns(Task.CompletedTask) .Verifiable(); var resource = new StockResource(messageHandler.Object); var update = new UpdateClosingPricesCommand() { Id = stockId }; update.AddClosingPrice(new Date(2000, 01, 02), 12.00m); await resource.UpdateClosingPrices(update); mockRepository.Verify(); }
public async Task DelistStock() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.PostAsync <DelistStockCommand>( It.Is <string>(x => x == "stocks/" + stockId + "/delist"), It.Is <DelistStockCommand>(x => x.Id == stockId && x.DelistingDate == new Date(2000, 01, 02)))) .Returns(Task.CompletedTask) .Verifiable(); var resource = new StockResource(messageHandler.Object); var delist = new DelistStockCommand() { Id = stockId, DelistingDate = new Date(2000, 01, 02), }; await resource.DelistStock(delist); mockRepository.Verify(); }
public async Task ChangeStock() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.PostAsync <ChangeStockCommand>( It.Is <string>(x => x == "stocks/" + stockId + "/change"), It.Is <ChangeStockCommand>(x => x.Id == stockId && x.AsxCode == "ABC"))) .Returns(Task.CompletedTask) .Verifiable(); var resource = new StockResource(messageHandler.Object); var change = new ChangeStockCommand() { Id = stockId, AsxCode = "ABC", }; await resource.ChangeStock(change); mockRepository.Verify(); }
public async Task Find() { var mockRepository = new MockRepository(MockBehavior.Strict); var stocks = new List <StockResponse>() { new StockResponse() { Id = Guid.NewGuid(), AsxCode = "ABC" }, new StockResponse() { Id = Guid.NewGuid(), AsxCode = "AYZ" } }; var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.GetAsync <List <StockResponse> >(It.Is <string>(x => x == "stocks?query=ABC"))) .Returns(Task <List <StockResponse> > .FromResult(stocks)) .Verifiable(); var resource = new StockResource(messageHandler.Object); var result = await resource.Find("ABC"); result.Should().BeEquivalentTo(stocks); mockRepository.Verify(); }
public void MapFile_ReturnsCorrectFileInfo(string urlPath, string name) { var info = _fileProvider.MapUrlPath(urlPath, _mimeTypeProvider); Assert.IsNotNull(info, "info != null"); Assert.IsTrue(info.IsFile, "info.IsFile == true"); Assert.AreEqual(name, info.Name, "info.Name has the correct value"); Assert.AreEqual(StockResource.GetLength(urlPath), info.Length, "info.Length has the correct value"); }
public void OpenFile_ReturnsCorrectContent(string urlPath) { var info = _fileProvider.MapUrlPath(urlPath, _mimeTypeProvider); var expectedText = StockResource.GetText(urlPath, Encoding.UTF8); using var stream = _fileProvider.OpenFile(info.Path); using var reader = new StreamReader(stream, Encoding.UTF8, false, WebServer.StreamCopyBufferSize, true); var actualText = reader.ReadToEnd(); Assert.AreEqual(expectedText, actualText, "Content is the same as embedded resource"); }
public IActionResult StockUpdate(StockResource stockResouce) { //map stockResource to Stock //map stockResource to stock transction if (stockResouce.Acion == "BUY") { } if (stockResouce.Acion == "SELL") { } if (stockResouce.Acion == "UPDATE") { } else { return(BadRequest("Action Not Found.")); } //update to stock table; //add to transction table; return(Ok(stockResouce)); }
public async Task GetHistory() { var mockRepository = new MockRepository(MockBehavior.Strict); var stock = new StockHistoryResponse() { Id = Guid.NewGuid(), AsxCode = "ABC" }; var messageHandler = mockRepository.Create <IRestClientMessageHandler>(); messageHandler.Setup(x => x.GetAsync <StockHistoryResponse>(It.Is <string>(x => x == "stocks/" + stock.Id + "/history"))) .Returns(Task <StockHistoryResponse> .FromResult(stock)) .Verifiable(); var resource = new StockResource(messageHandler.Object); var result = await resource.GetHistory(stock.Id); result.Should().BeEquivalentTo(stock); mockRepository.Verify(); }