public void GalleryItems_ShouldCallIteServiceGetItemsOfType_TimesOnce_WhenTypeIsNull() { //Arange GalleryItemsViewModel model = new GalleryItemsViewModel(); int pageNumber = 10; string type = "Necklace"; var items = new List <Item>(); var colour = MainColourType.Red; var material = MainMaterialType.Swarovski; this.itemServiceMock.Setup(i => i.GetItemsOfTypeCount(It.IsAny <ItemType>(), colour, material)).Returns(It.Is <int>(c => c >= 0)); this.itemServiceMock.Setup(i => i.GetItemsOfType( pageNumber, It.Is <ItemType>(t => t.ToString() == type), It.IsAny <MainColourType>(), It.IsAny <MainMaterialType>())).Returns(items); var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); // Act var viewResult = itemsController.GalleryItems(model, pageNumber, type) as ViewResult; // Assert this.itemServiceMock.Verify(i => i.GetItemsOfType( pageNumber, It.Is <ItemType>(t => t.ToString() == type), It.IsAny <MainColourType>(), It.IsAny <MainMaterialType>()), Times.Once); }
public void GalleryItemsPromotions_ShouldCallIteServiceGetItemsInPromotion_WhenAllParametersAreValid() { //Arange GalleryItemsViewModel model = new GalleryItemsViewModel(); int pageNumber = 10; var items = new List <Item>(); var colour = MainColourType.Red; var material = MainMaterialType.Swarovski; this.itemServiceMock.Setup(i => i.GetAllItemsInPromotionCount(colour, material)).Returns(It.Is <int>(c => c >= 0)); this.itemServiceMock.Setup(i => i.GetItemsInPromotion( pageNumber, It.IsAny <MainColourType>(), It.IsAny <MainMaterialType>())).Returns(items); var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); // Act var viewResult = itemsController.GalleryItemsPromotions(model, pageNumber) as ViewResult; // Assert this.itemServiceMock.Verify(i => i.GetItemsInPromotion( pageNumber, It.IsAny <MainColourType>(), It.IsAny <MainMaterialType>()), Times.Once); }
public void GalleryItemsPromotions_ShouldThrowArgumentOutOfRangeException_WhenZeroPageNumberIsPassed() { //Arange var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); GalleryItemsViewModel model = new GalleryItemsViewModel(); int invalidPageNumber = 0; //Act & Assert var viewResult = itemsController.GalleryItemsPromotions(model, invalidPageNumber) as ViewResult; }
public void GalleryItems_ShouldThrowArgumentOutOfRangeException_WhenNegativePageNumberIsPassed() { //Arange var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); GalleryItemsViewModel model = new GalleryItemsViewModel(); int invalidPageNumber = -91; string type = "Necklace"; //Act & Assert var viewResult = itemsController.GalleryItems(model, invalidPageNumber, type) as ViewResult; }
public void SingleItem_ShouldThrowArgumentOutOfRangeException_WhenNegativeItemIdIsPassed() { //Arange var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); GalleryItemsViewModel model = new GalleryItemsViewModel(); int invalidItemId = -10; //Act & Assert var viewResult = itemsController.GalleryItemsNew(model, invalidItemId) as ViewResult; }
public void GalleryItems_ShouldThrowArgumentNullException_WhenTypeIsNull() { //Arange var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); GalleryItemsViewModel model = new GalleryItemsViewModel(); int pageNumber = 10; string type = null; //Act & Assert var viewResult = itemsController.GalleryItems(model, pageNumber, type) as ViewResult; }
public void GalleryItemsPromotions_ShouldReturnViewNotNull() { //Arange var itemsController = new ItemsController(this.itemServiceMock.Object, this.mappingServiceMock.Object, this.imageProviderMock.Object); GalleryItemsViewModel model = new GalleryItemsViewModel(); int pageNumber = 1; //Act var viewResult = itemsController.GalleryItemsPromotions(model, pageNumber) as ViewResult; //Assert Assert.IsNotNull(viewResult); }
public ActionResult GalleryItemsPromotions(GalleryItemsViewModel model, int pageNumber) { Validator.ValidateNullArgument(model, "model"); Validator.ValidateRange(pageNumber, 1, int.MaxValue, "pageNumber"); var itemsCount = this.itemService.GetAllItemsInPromotionCount(model.Colour, model.Material); var dbItemsList = this.itemService.GetItemsInPromotion(pageNumber, model.Colour, model.Material); var viewItemsList = this.ConvertToViewItemList(dbItemsList); model.GalleryTitle = ServerConstants.GalleryPromotionItemsHeader; model.PageButtonsCount = this.CalculatePageNumberButtonsCount(itemsCount); model.ItemsList = viewItemsList; ViewData["controllerName"] = "GalleryItemsPromotions"; return(View("GalleryItems", model)); }
public ActionResult GalleryItems(GalleryItemsViewModel model, int pageNumber, string type) { Validator.ValidateNullArgument(model, "model"); Validator.ValidateRange(pageNumber, 1, int.MaxValue, "pageNumber"); Validator.ValidateNullArgument(type, "type"); ItemType itemType = (ItemType)Enum.Parse(typeof(ItemType), type, true); var itemsOfTypeCount = this.itemService.GetItemsOfTypeCount(itemType, model.Colour, model.Material); var dbItemsList = this.itemService.GetItemsOfType(pageNumber, itemType, model.Colour, model.Material); var viewItemsList = this.ConvertToViewItemList(dbItemsList); model.GalleryTitle = this.SetViewTitleFormItemType(itemType); model.PageButtonsCount = this.CalculatePageNumberButtonsCount(itemsOfTypeCount); model.ItemsList = viewItemsList; model.ItemType = type; ViewData["controllerName"] = "GalleryItems"; return(View(model)); }