public async Task GetLatestPrice_SupplySymbolNotInTheDatabase_ShouldReturnNotFound() { _shareServiceMock.Setup(e => e.GetLastPriceAsync("DER")).Returns(Task.FromResult <HourlyShareRate>(null)); var act = await _shareController.GetLatestPrice("DER"); var result = act as NotFoundResult; Assert.IsNotNull(result); Assert.That(result.StatusCode, Is.EqualTo(404)); }
public async Task GetLatestPrice_ShouldReturnNotFound() { string symbol = "REL"; // Arrange // Act var result = await _shareController.GetLatestPrice(symbol); // Assert var returnResult = result as NotFoundResult; Assert.IsInstanceOf(typeof(NotFoundResult), returnResult); }
public async Task Post_GetLastestPrice() { string symbol = "CBI"; var result = await _shareController.GetLatestPrice(symbol); Assert.NotNull(result); var obteainedResult = Task.FromResult(result); //var obteainedResult = result as HourlyShareRate; Assert.NotNull(obteainedResult); }
public void Get_GetLatestPrice() { string symbol = "CBI"; var result = _shareController.GetLatestPrice(symbol); Assert.NotNull(result); }
public async Task Search_Returns_Shares_BySymbol() { // Arrange var shareDbSetMock = Builder <HourlyShareRate> .CreateListOfSize(3) .All() .With(c => c.Rate = Faker.RandomNumber.Next(20, 100)) .With(c => c.Symbol = "REL") .Build().ToAsyncDbSetMock(); _shareRepositoryMock.Setup(m => m.Query()).Returns(shareDbSetMock.Object); // Act var result = await _shareController.GetLatestPrice("REL"); // Assert Assert.NotNull(result); var objectResult = result as OkObjectResult; Assert.NotNull(objectResult); var content = Convert.ToDecimal(objectResult.Value); Assert.NotNull(content); }
public async Task Get_latestHourlyShare_Valid_Value() { string symbol = "REL"; var hourRate = new[] { new HourlyShareRate() { Id = 1, Symbol = symbol, Rate = 10, TimeStamp = DateTime.Now.AddDays(-1) }, new HourlyShareRate() { Id = 1, Symbol = symbol, Rate = 20, TimeStamp = DateTime.Now } }; _shareRepositoryMock.Setup(x => x.GetBySymbol(It.Is <string>(s => s.Equals(symbol)))) .Returns(Task.FromResult(new List <HourlyShareRate>(hourRate))); var result = await _shareController.GetLatestPrice(symbol); Assert.NotNull(result); var okResult = result as OkObjectResult; Assert.NotNull(okResult.Value); Assert.AreEqual(20, okResult.Value); }
public async Task GetShareLastestBySymbol() { var result = _shareController.GetLatestPrice("REL"); // Assert Assert.NotNull(result); }
public void Get_LatestPrice_should_Return_Ok(string symbol, bool expectedResult) { //Arrange IQueryable <HourlyShareRate> share = new List <HourlyShareRate>() { new HourlyShareRate() { Symbol = "CBI", Rate = 30.0M, TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0) }, new HourlyShareRate() { Symbol = "DBI", Rate = 330.0M, TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0) } }.AsQueryable(); _shareRepositoryMock.Setup(x => x.Query()).Returns(share); //Act var result = _shareController.GetLatestPrice(symbol).Result as ObjectResult; //Assert Assert.AreEqual(200, result.StatusCode); }
public async Task Get_LatestPrice() { string symbol = "REL"; var result = await _shareController.GetLatestPrice(symbol); OkObjectResult okResult = result as OkObjectResult; Assert.NotNull(okResult.Value); }
public async Task Get_ShouldGetSharePricesLatest() { var result = await _shareController.GetLatestPrice("A"); Assert.NotNull(result); var okResult = result as OkObjectResult; Assert.NotNull(okResult); Assert.NotNull(okResult.Value); Assert.AreEqual(1.5m, okResult.Value); Assert.AreEqual(200, okResult.StatusCode); }
public async Task CanReturnLatestPriceBySymbol() { // Arrege _shareRepositoryMock .Setup(m => m.FindLastBySymbolAsync(It.IsAny <string>())) .Returns(Task.FromResult(new Share() { Rate = 100.0M })); // Act var result = await _shareController.GetLatestPrice("REL"); // Assert var okResult = result.Should().BeOfType <OkObjectResult>().Subject; var lastetPrice = okResult.Value; Assert.AreEqual(100.0M, lastetPrice); _shareRepositoryMock.Verify(mock => mock.FindLastBySymbolAsync(It.IsAny <string>())); }
public async Task GetLatestPrice_ShouldReturnLastRate() { // Arrange _shareRepositoryMock.Setup(p => p.GetLatestPrice(It.IsIn <String>("CBI"))).Returns(new HourlyShareRate { Symbol = "CBI", Rate = 333.0M, TimeStamp = new DateTime(2018, 08, 17, 5, 1, 0) }); // Act var result = await _shareController.GetLatestPrice("CBI"); // Assert Assert.NotNull(result); OkObjectResult okResult = result as OkObjectResult; Assert.NotNull(okResult); Assert.AreEqual(200, okResult.StatusCode); Assert.AreEqual(decimal.Parse(okResult.Value.ToString()), 333.0M); }
public async Task GetLatestPrice_ShouldReturnMostRecentPrice() { // Arrange var hourRates = new List <HourlyShareRate>() { new HourlyShareRate { Symbol = "CBI", Rate = 330.0M, TimeStamp = new DateTime(2019, 08, 17, 5, 0, 0) }, new HourlyShareRate { Symbol = "CBI", Rate = 530.0M, TimeStamp = new DateTime(2020, 08, 17, 5, 0, 0) }, new HourlyShareRate { Symbol = "CBI", Rate = 430.0M, TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0) } }; var mockSet = new Mock <DbSet <HourlyShareRate> >(); mockSet.MockDbSet <HourlyShareRate>(hourRates); var mockContext = new Mock <ExchangeContext>(); var mockRepository = new Mock <ShareRepository>(mockContext.Object); var shareController = new ShareController(mockRepository.Object); mockContext.Setup(i => i.Set <HourlyShareRate>()).Returns(mockSet.Object); // Act var result = shareController.GetLatestPrice("CBI").GetAwaiter().GetResult() as OkObjectResult; // Assert Assert.NotNull(result); Assert.AreEqual(200, result.StatusCode); Assert.AreEqual(530.0M, (decimal)result.Value); }
public async Task GetLatestPrice_ShouldReturnLastPrice() { _shareRepositoryMock.Setup(x => x.GetBySymbol(It.Is <string>(s => s.Equals("REL")))) .Returns(Task.FromResult(new List <HourlyShareRate>(new[] { new HourlyShareRate() { Symbol = "REL", Rate = 50, TimeStamp = DateTime.Now.AddDays(-1) }, new HourlyShareRate() { Symbol = "REL", Rate = 100, TimeStamp = DateTime.Now }, new HourlyShareRate() { Symbol = "REL", Rate = 150, TimeStamp = DateTime.Now.AddDays(-2) }, })) ); var result = await _shareController.GetLatestPrice("REL") as OkObjectResult; Assert.AreEqual(100, result.Value); }