Ejemplo n.º 1
0
        public void CallOrderDataProviderAddAndSaveChangesMethod()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var mockedOrderToCreate     = new Order();
            var mockedComic             = new Comic()
            {
                Id = 2, Price = 5m, AvailableCount = 1
            };

            mockedComicDataProvider.Setup(x => x.GetById(2)).Returns(mockedComic);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToCreate);

            actualOrderService.CreateOrder("Ak47", new List <Comic>()
            {
                mockedComic
            });

            //Assert
            mockedOrderDataProvider.Verify(x => x.Add(It.IsAny <Order>()), Times.Once);
            mockedOrderDataProvider.Verify(x => x.SaveChanges(), Times.Once);
        }
Ejemplo n.º 2
0
        public void ReturnFalseWhenAvailableCountIsLessThanZero()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var mockedOrderToCreate     = new Order();
            var mockedComic             = new Comic()
            {
                Id = 2, Price = 5m, AvailableCount = -1
            };

            mockedComicDataProvider.Setup(x => x.GetById(2)).Returns(mockedComic);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToCreate);

            var result =
                actualOrderService.CreateOrder("Ak47", new List <Comic>()
            {
                mockedComic
            });

            //Assert
            Assert.AreEqual(false, result);
        }
Ejemplo n.º 3
0
        public void ReturnIQueryableOrdersCollectionProvidedFromOrderDataProviderAllMethod()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var mockedOrderToCreate     = new Order();
            var mockedOrdersCollection  = new List <Order>()
            {
                mockedOrderToCreate
            };

            mockedOrderDataProvider.Setup(x => x.All()).Returns(mockedOrdersCollection.AsQueryable);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToCreate);

            var resultOrdersCollection = actualOrderService.GetAllOrders();

            //Assert
            Assert.AreEqual(mockedOrdersCollection, resultOrdersCollection);
            Assert.That(resultOrdersCollection, Is.InstanceOf <IQueryable <Order> >());
        }
Ejemplo n.º 4
0
        public void SetOrderToUpdateIsProceededValueToTrue()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var orderId             = 5;
            var mockedOrderToUpdate = new Order()
            {
                Id = orderId, isProceeded = false
            };


            mockedOrderDataProvider.Setup(x => x.GetById(orderId)).Returns(mockedOrderToUpdate);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToUpdate);

            actualOrderService.ProceedOrderById(orderId);

            //Assert
            Assert.AreEqual(mockedOrderToUpdate.isProceeded, true);
        }
Ejemplo n.º 5
0
        public void CallOrderDataProviderSaveChangesMethod()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var orderId             = 5;
            var mockedOrderToUpdate = new Order()
            {
                Id = orderId
            };


            mockedOrderDataProvider.Setup(x => x.GetById(orderId)).Returns(mockedOrderToUpdate);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToUpdate);

            actualOrderService.ProceedOrderById(orderId);

            //Assert
            mockedOrderDataProvider.Verify(x => x.SaveChanges(), Times.Once);
        }
Ejemplo n.º 6
0
        public void CallOrderDataProviderAllMethod()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var mockedOrderToCreate     = new Order();

            mockedOrderDataProvider.Setup(x => x.All()).Returns(new List <Order>().AsQueryable);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToCreate);

            actualOrderService.GetAllOrders();

            //Assert
            mockedOrderDataProvider.Verify(x => x.All(), Times.Once);
        }
Ejemplo n.º 7
0
        public void ReturnOnlyOrderdsWithPassedUserId()
        {
            //Arrange
            var mockedOrderDataProvider = new Mock <IEfComicShopDataProvider <Order> >();
            var mockedComicDataProvider = new Mock <IEfComicShopDataProvider <Comic> >();
            var mockedOrderToCreate     = new Order();
            var userId        = "Ak47";
            var matchingOrder = new Order()
            {
                UserId = userId
            };

            var notMatchingOrder = new Order()
            {
                UserId = "notMatchedId"
            };

            var ordersList = new List <Order>()
            {
                matchingOrder, notMatchingOrder
            };

            // ordersList has 2 orders but only one matches userId
            int expectedCount = 1;

            mockedOrderDataProvider.Setup(x => x.All()).Returns(ordersList.AsQueryable);

            //Act
            var actualOrderService = new ComicShop.Data.Services.OrderService(
                mockedOrderDataProvider.Object,
                mockedComicDataProvider.Object,
                mockedOrderToCreate);

            var resultOrdersList = actualOrderService.GetOrdersByUserId(userId);

            //Assert
            Assert.AreEqual(resultOrdersList.Count(), expectedCount);
            Assert.Contains(matchingOrder, resultOrdersList.ToList());
        }