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