示例#1
0
        public void ReturnCorrectCollectionCount_AsOutParameter_WhenCalled()
        {
            // Arrange
            IEnumerable <CustomPizza> pizzas = Helper.GetCustomPizzas();
            var contextMock    = new Mock <IPizzaFactoryDbContext>();
            var mapperMock     = new Mock <IMapper>();
            var validatorMock  = new Mock <IValidator>();
            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapperMock.Object, validatorMock.Object);
            int count = 0;

            // Act
            customPizzaService.GetAllWithPaging(out count);

            // Assert
            Assert.AreEqual(pizzas.Count(), count);
        }
示例#2
0
        public void CallMapperFromCustomPizzas_WhenCalled()
        {
            // Arrange
            IEnumerable <CustomPizza> pizzas = new List <CustomPizza>();
            var contextMock    = new Mock <IPizzaFactoryDbContext>();
            var mapperMock     = new Mock <IMapper>();
            var validatorMock  = new Mock <IValidator>();
            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapperMock.Object, validatorMock.Object);
            int count = 0;

            // Act
            customPizzaService.GetAllWithPaging(out count);

            // Assert
            mapperMock.Verify(m => m.FromCustomPizzas(It.IsAny <ICollection <CustomPizza> >()), Times.Once);
        }
示例#3
0
        public void ReturnIEnumerableOfCustomPizzaModels_WhenCalled()
        {
            // Arrange
            IEnumerable <CustomPizza> pizzas = Helper.GetCustomPizzas();
            var contextMock = new Mock <IPizzaFactoryDbContext>();
            var mapper      = new Mapper();
            var validator   = new Validator();

            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapper, validator);

            int count = 0;

            // Act
            var result = customPizzaService.GetAllWithPaging(out count);

            // Assert
            Assert.IsInstanceOfType(result, typeof(IEnumerable <CustomPizzaModel>));
        }
        public void CallMapperFromCreateCustomPizzaModel_WhenCalled()
        {
            // Arrange
            IEnumerable <CustomPizza> pizzas   = new List <CustomPizza>();
            CustomPizza            customPizza = new CustomPizza();
            CreateCustomPizzaModel ccpm        = new CreateCustomPizzaModel();
            var contextMock   = new Mock <IPizzaFactoryDbContext>();
            var mapperMock    = new Mock <IMapper>();
            var validatorMock = new Mock <IValidator>();

            mapperMock.Setup(m => m.FromCreateCustomPizzaModel(contextMock.Object, ccpm)).Returns(customPizza);
            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapperMock.Object, validatorMock.Object);

            // Act
            customPizzaService.Create(ccpm);

            // Assert
            mapperMock.Verify(m => m.FromCreateCustomPizzaModel(contextMock.Object, ccpm), Times.Once);
        }
示例#5
0
        public void ReturnCollection_ForTheProvidedPage_OrderedByName_WhenCalled()
        {
            // Arrange
            IEnumerable <CustomPizza> pizzas = Helper.GetCustomPizzas();
            var contextMock = new Mock <IPizzaFactoryDbContext>();
            var mapper      = new Mapper();
            var validator   = new Validator();

            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapper, validator);

            int count    = 0;
            int pageSize = 1;
            int page     = 2;

            // Act
            var result = customPizzaService.GetAllWithPaging(out count, page, pageSize);

            // Assert
            Assert.AreEqual(pizzas.OrderBy(x => x.Name).ToList()[page - 1].Name, result.First().Name);
        }
示例#6
0
        public void ReturnCollection_WithPageSizeNumberOfItems_WhenCalled()
        {
            // Arrange
            IEnumerable <CustomPizza> pizzas = Helper.GetCustomPizzas();
            var contextMock = new Mock <IPizzaFactoryDbContext>();
            var mapper      = new Mapper();
            var validator   = new Validator();

            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapper, validator);

            int count    = 0;
            int pageSize = 1;
            int page     = 1;

            // Act
            var result = customPizzaService.GetAllWithPaging(out count, page, pageSize);

            // Assert
            Assert.AreEqual(pageSize, result.Count());
        }
        public void ReturnZero_IfPizzaWasNotCreated_WhenCalled()
        {
            // Arrange
            ICollection <CustomPizza> pizzas   = new List <CustomPizza>();
            CustomPizza            customPizza = new CustomPizza();
            CreateCustomPizzaModel ccpm        = new CreateCustomPizzaModel();
            var contextMock   = new Mock <IPizzaFactoryDbContext>();
            var mapperMock    = new Mock <IMapper>();
            var validatorMock = new Mock <IValidator>();

            mapperMock.Setup(m => m.FromCreateCustomPizzaModel(contextMock.Object, ccpm)).Returns(customPizza);
            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas as IEnumerable <CustomPizza>);

            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            contextMock.Setup(ctx => ctx.SaveChanges()).Returns(() => pizzas.Count > 0 ? 1 : 0);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapperMock.Object, validatorMock.Object);

            // Act
            int result = customPizzaService.Create(ccpm);

            // Assert
            Assert.AreEqual(0, result);
        }
        public void AddNewCustomPizzaToCustomPizzas_WhenCalled()
        {
            // Arrange
            ICollection <CustomPizza> pizzas   = new List <CustomPizza>();
            CustomPizza            customPizza = new CustomPizza();
            CreateCustomPizzaModel ccpm        = new CreateCustomPizzaModel();
            var contextMock   = new Mock <IPizzaFactoryDbContext>();
            var mapperMock    = new Mock <IMapper>();
            var validatorMock = new Mock <IValidator>();

            mapperMock.Setup(m => m.FromCreateCustomPizzaModel(contextMock.Object, ccpm)).Returns(customPizza);
            var pizzaDbSetMock = QueryableDbSetMock.GetQueryableMockDbSet(pizzas as IEnumerable <CustomPizza>);

            pizzaDbSetMock.Setup(p => p.Add(customPizza)).Callback(() => pizzas.Add(customPizza));
            contextMock.Setup(ctx => ctx.CustomPizzas).Returns(pizzaDbSetMock.Object);
            ICustomPizzaService customPizzaService = new CustomPizzaService(contextMock.Object, mapperMock.Object, validatorMock.Object);

            // Act
            customPizzaService.Create(ccpm);

            // Assert
            Assert.AreEqual(1, pizzas.Count());
        }