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); }
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); }
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); }
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); }
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()); }