public async Task ShouldGet()
        {
            //Arrange
            String symbol = "CBI";
            // Act
            var result = await _shareController.Get(symbol);

            // Assert
            Assert.NotNull(result);

            //var createdResult = result as List<HourlyShareRate>;
            //Assert.NotNull(createdResult);
        }
示例#2
0
        public async Task Get_SupplySymbol_ShouldReturnNotFound()
        {
            _shareServiceMock.Setup(e => e.GetBySymbolAsync("AS"))
            .Returns(Task.FromResult <IList <HourlyShareRate> >(new List <HourlyShareRate>()));


            var act = await _shareController.Get("AS");

            var result = act as NotFoundResult;

            Assert.IsNotNull(result);
            Assert.That(result.StatusCode, Is.EqualTo(404));
        }
示例#3
0
        public async Task Get_ShouldReturnNotFound()
        {
            string symbol = "REL";
            List <HourlyShareRate> list = new List <HourlyShareRate>();

            // Arrange
            _shareRepositoryMock.Setup(x => x.Get(It.IsAny <string>())).ReturnsAsync(list);
            // Act
            var result = await _shareController.Get(symbol);

            // Assert
            var returnResult = result as NotFoundResult;

            Assert.IsInstanceOf(typeof(NotFoundResult), returnResult);
        }
示例#4
0
        public async Task Get_ShouldGetHourlySharePrices()
        {
            List <HourlyShareRate> rates = new List <HourlyShareRate>();

            rates.Add(new HourlyShareRate()
            {
                Symbol    = "CBI",
                Rate      = 330.0M,
                TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0)
            });
            _shareRepositoryMock.Setup(mr => mr.Query()).Returns(rates.AsQueryable());

            // Arrange

            // Act
            var result = await _shareController.Get("CBI");

            // Assert
            Assert.NotNull(result);
            var okResult = result as OkObjectResult;

            Assert.NotNull(okResult);
            var list = okResult.Value as List <HourlyShareRate>;

            Assert.AreEqual(330.0M, list[0].Rate);
        }
示例#5
0
        public async Task Search_Returns_Shares_List()
        {
            // 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.Get("REL");

            // Assert
            Assert.NotNull(result);

            var objectResult = result as OkObjectResult;

            Assert.NotNull(objectResult);

            var content = objectResult.Value as List <HourlyShareRate>;

            Assert.NotNull(content);

            Assert.AreEqual(3, content.Count);
        }
        public async Task Get_FoundMatchingData_ShouldReturnOk()
        {
            // Arrange
            var hourRates = new List <HourlyShareRate>()
            {
                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.Get("CBI").GetAwaiter().GetResult() as OkObjectResult;

            // Assert
            Assert.AreEqual(200, result.StatusCode);
        }
        public async Task GetShareBySymbol()
        {
            var result = await _shareController.Get("REL");

            // Assert
            Assert.NotNull(result);
        }
        public async Task Get_HourlyShare_Greater_Than_Zero()
        {
            string symbol   = "CBI";
            var    hourRate = new[]
            {
                new HourlyShareRate()
                {
                    Id = 1, Symbol = symbol, Rate = 330.0M, TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0)
                }
            };

            _shareRepositoryMock.Setup(x => x.GetBySymbol(It.Is <string>(s => s == symbol)))
            .Returns(Task.FromResult(new List <HourlyShareRate>(hourRate)));

            var result = await _shareController.Get(symbol);

            Assert.NotNull(result);

            var okResult = result as OkObjectResult;

            var shareList = okResult.Value as List <HourlyShareRate>;

            Assert.NotNull(shareList);

            Assert.Greater(shareList.Count, 0);
        }
        public async Task Get_ReturnsNotNull()
        {
            string symbol = "REL";

            _shareRepositoryMock
            .Setup(x => x.GetBySymbol(It.Is <string>(s => s == symbol)))
            .Returns(Task.FromResult(new List <HourlyShareRate>(new[]
            {
                new HourlyShareRate()
                {
                    Id = 1, Symbol = symbol, Rate = 100, TimeStamp = DateTime.Now
                }
            }))
                     );

            var result = await _shareController.Get(symbol) as OkObjectResult;

            Assert.NotNull(result);

            var resultList = result.Value as List <HourlyShareRate>;

            Assert.NotNull(resultList);

            Assert.NotZero(resultList.Count);
        }
示例#10
0
        public async Task Get_ShoudGetTwoHourlyShareRates()
        {
            var hourRates = new List <HourlyShareRate> {
                new HourlyShareRate
                {
                    Symbol    = "CBI",
                    Rate      = 330.0M,
                    TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0)
                },
                new HourlyShareRate
                {
                    Symbol    = "CBI",
                    Rate      = 330.0M,
                    TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0)
                }
            };

            _shareRepositoryMock.Setup(p => p.Query()).Returns(hourRates.AsQueryable());

            // Arrange

            // Act
            var result = await _shareController.Get("CBI");

            // Assert
            Assert.NotNull(result);

            OkObjectResult okResult = result as OkObjectResult;

            Assert.NotNull(okResult);
            Assert.AreEqual(200, okResult.StatusCode);
            Assert.AreEqual((okResult.Value as IEnumerable <HourlyShareRate>).Count(), 2);
        }
示例#11
0
        public async Task Get_ShouldReturnsHourlyShareWhenExists()
        {
            // Arrange
            var hourRateSymbol = "CBI";
            var hourRate       = new HourlyShareRate
            {
                Symbol    = "CBI",
                Rate      = 330.0M,
                TimeStamp = new DateTime(2018, 08, 17, 5, 0, 0)
            };
            await _shareRepository.InsertAsync(hourRate);

            // Act
            var result = await _shareController.Get(hourRateSymbol);

            // Assert
            Assert.IsTrue(result is OkObjectResult);
        }
        public async Task Get_FetchAllShares()
        {
            var share = await _shareController.Get();

            Assert.NotNull(share);

            var foundResult = share as OkObjectResult;

            Assert.NotNull(foundResult);
            Assert.AreEqual(200, foundResult.StatusCode);
        }
        public async Task TheReturnGetModel()
        {
            string symbol = "REL";

            OkObjectResult result = await _shareController.Get(symbol) as OkObjectResult;

            Assert.NotNull(result.Value);

            //var model = result.v as List<HourlyShareRate>;
            //Assert.True(model.Count>0);
        }
        public async Task Get_ShouldReturnNotFound()
        {
            string symbol = "REL";
            // Arrange

            // Act
            var result = await _shareController.Get(symbol);

            // Assert
            var returnResult = result as NotFoundResult;

            Assert.IsInstanceOf(typeof(NotFoundResult), returnResult);
        }
示例#15
0
        public async Task Get_ShouldGetSharePrices()
        {
            // Act
            var result = await _shareController.Get("A");

            Assert.NotNull(result);
            var okResult = result as OkObjectResult;

            Assert.NotNull(okResult);
            Assert.NotNull(okResult.Value);
            Assert.NotNull((okResult.Value as IEnumerable <HourlyShareRate>));
            Assert.AreEqual(2, (okResult.Value as IEnumerable <HourlyShareRate>).Count());
            Assert.AreEqual(200, okResult.StatusCode);
        }
示例#16
0
        public async Task GetSharePrices_ShouldHaveData()
        {
            // Arrange

            string symbol = "CBI";

            _shareServiceMock.Setup(t => t.GetBySymbolAsync(symbol))
            .Returns(Task.FromResult((IList <HourlyShareRate>) new List <HourlyShareRate>()
            {
                new HourlyShareRate()
                {
                }
            }));

            // Act
            var result = await _shareController.Get(symbol);

            // Assert
            Assert.NotNull(result);

            var okresult = result as OkObjectResult;

            Assert.AreEqual(200, okresult.StatusCode);
        }
        public async Task Get_ShouldRetriveRegisterdShare()
        {
            // Arrange
            string symbol = "REL";
            // Act
            var result = await _shareController.Get(symbol);

            // Assert
            Assert.NotNull(result);

            var createdResult = result as OkObjectResult;

            Assert.NotNull(createdResult);
            Assert.AreEqual(200, createdResult.StatusCode);
        }
        public async Task CanReturnShareBySymbol()
        {
            // Arrege
            _shareRepositoryMock
            .Setup(m => m.FindAsync(It.IsAny <Expression <Func <Share, bool> > >()))
            .Returns(Task.FromResult(new List <Share>()
            {
                new Share()
            }));

            // Act
            var result = await _shareController.Get("REL");

            // Assert
            var okResult  = result.Should().BeOfType <OkObjectResult>().Subject;
            var shareList = okResult.Value.Should().BeAssignableTo <IEnumerable <Share> >().Subject;

            shareList.Should().NotBeEmpty();
            _shareRepositoryMock.Verify(mock => mock.FindAsync(It.IsAny <Expression <Func <Share, bool> > >()));
        }
        public async Task Get_ShouldReturn_value(string symbol, bool expectedResult)
        {
            bool isObjectReturned = false;
            //Arrange
            IQueryable <HourlyShareRate> share = new List <HourlyShareRate>()
            {
                new HourlyShareRate()
                {
                    Symbol    = "CBI",
                    Rate      = 330.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 = await _shareController.Get(symbol) as ObjectResult;

            var objectReturned = result.Value as List <HourlyShareRate>;

            // Assert
            Assert.IsNotNull(result);
            Assert.IsNotNull(objectReturned);

            if (objectReturned.Count() > 0)
            {
                isObjectReturned = true;
            }



            Assert.AreEqual(expectedResult, isObjectReturned);
        }
        public async Task Get_ShouldGetShare()
        {
            var result = await _shareController.Get("REL");

            Assert.NotNull(result);
        }