public void UsunZKoszyka_ShouldRemoveItem_WhenItemExists( [Frozen] Mock <IKoszykService> koszykServiceMock, int id, KoszykController sut) { // act var actual = sut.UsunZKoszyka(id); // assert koszykServiceMock.Verify(m => m.UsunProdukt(It.Is <int>(i => i == id)), Times.Once()); }
public void UsunZKoszyka_ShouldReturnNoContent_WhenItemRemoved( [Frozen] Mock <IKoszykService> koszykServiceMock, int id, KoszykController sut) { // act var actual = sut.UsunZKoszyka(id); // assert actual.ShouldBeOfType <NoContentResult>(); }
public void DodajProduktDoKoszyka_ShouldReturnCreated_WhenModelInvalid(DodajProduktModel model, KoszykController sut) { // act var actual = sut.DodajProduktDoKoszyka(model); // assert actual.ShouldBeOfType <StatusCodeResult>(); (actual as StatusCodeResult).StatusCode.ShouldBe(201); }
public void Get_ShouldReturnNotFoundResult_WhenServiceReturnsNoData( [Frozen] Mock <IKoszykService> koszykServiceMock, KoszykController sut) { // arrange koszykServiceMock.Setup(m => m.PobierzKoszyk()).Returns(default(IEnumerable <ProduktModel>)); // act var actual = sut.Get().Result; // assert actual.ShouldBeOfType <NotFoundResult>(); }
public void UsunZKoszyka_ShouldReturnNotFound_WhenItemNotExist( [Frozen] Mock <IKoszykService> koszykServiceMock, int id, KoszykController sut) { // arrange koszykServiceMock.Setup(m => m.UsunProdukt(It.Is <int>(i => i == id))).Throws <ItemNotFoundException>(); // act var actual = sut.UsunZKoszyka(id); // assert actual.ShouldBeOfType <NotFoundResult>(); }
public void PobierzKoszykWartosc_ShouldReturnCorrectResult([Frozen] Mock <IKoszykService> koszykServiceMock, decimal koszykWartosc, KoszykController sut) { // arrange koszykServiceMock.Setup(m => m.PobierzKoszykWartosc()).Returns(koszykWartosc); // act var actual = sut.PobierzKoszykWartosc(); // assert actual.ShouldBeOfType <OkObjectResult>(); (actual as OkObjectResult).Value.ShouldBe(koszykWartosc); }
public void DodajProduktDoKoszyka_ShouldNotAddProductToCart_WhenModelIsNotValid( [Frozen] Mock <IKoszykService> koszykServiceMock, DodajProduktModel model, string key, string error, KoszykController sut) { // arrange sut.ModelState.AddModelError(key, error); // act var actual = sut.DodajProduktDoKoszyka(model); // assert koszykServiceMock.Verify(m => m.DodajProdukt(It.IsAny <int>(), It.IsAny <decimal>()), Times.Never()); }
public void TestMethod1() { //Arrange var mockSetProducts = new Mock <DbSet <Products> >(); mockSetProducts.As <IQueryable <Products> >().Setup(m => m.Provider).Returns(_products.Provider); mockSetProducts.As <IQueryable <Products> >().Setup(m => m.Expression).Returns(_products.Expression); mockSetProducts.As <IQueryable <Products> >().Setup(m => m.ElementType).Returns(_products.ElementType); mockSetProducts.As <IQueryable <Products> >().Setup(m => m.GetEnumerator()).Returns(_products.GetEnumerator()); var mockSetCategories = new Mock <DbSet <Categories> >(); mockSetCategories.As <IQueryable <Categories> >().Setup(m => m.Provider).Returns(_categories.Provider); mockSetCategories.As <IQueryable <Categories> >().Setup(m => m.Expression).Returns(_categories.Expression); mockSetCategories.As <IQueryable <Categories> >().Setup(m => m.ElementType).Returns(_categories.ElementType); mockSetCategories.As <IQueryable <Categories> >().Setup(m => m.GetEnumerator()).Returns(_categories.GetEnumerator()); var mockContext = new Mock <ApplicationDbContext>(); mockContext.Setup(c => c.Products).Returns(mockSetProducts.Object); mockContext.Setup(c => c.Categories).Returns(mockSetCategories.Object); var cart = new Cart(); var controller = new KoszykController(mockContext.Object); //act controller.AddToCart(3, cart, 10); //assert var firstOrDefault = cart.Lines.FirstOrDefault(x => x.Id == 3); if (firstOrDefault != null) { Assert.AreEqual(firstOrDefault.Quantity, 10); } Assert.AreEqual(cart.Lines.Count(), 0); //act controller.AddToCart(1, cart, 10); //assert firstOrDefault = cart.Lines.FirstOrDefault(x => x.Id == 1); if (firstOrDefault != null) { Assert.AreEqual(firstOrDefault.Quantity, 10); Assert.AreEqual(cart.Lines.Count(), 1); } controller.RemoveFromCart(1, cart); Assert.AreEqual(cart.Lines.Count(), 0); controller.AddToCart(1, cart, 10); controller.IncreaseQuantity(1, cart); var orDefault = cart.Lines.FirstOrDefault(x => x.Id == 1); if (orDefault != null) { Assert.AreEqual(orDefault.Quantity, 11); } controller.DecreaseQuantity(1, cart); orDefault = cart.Lines.FirstOrDefault(x => x.Id == 1); if (orDefault != null) { Assert.AreEqual(orDefault.Quantity, 10); } controller.AddToCart(2, cart, 10); controller.Index(cart); var result = (ViewResult)controller.Index(cart); var model = (CartViewModels)result.Model; Assert.AreEqual(model.CartProductsList.Count(), 2); Assert.AreEqual(model.TotalValue, ((CalcPrice((decimal?)10.20, 0)) * 10 + (CalcPrice(20, 10)) * 10).ToString("c").Replace(",", ".")); }
public void DodajProduktDoKoszyka_ShouldReturnBadRequest_WhenModelIsInvalid(string key, string error, DodajProduktModel model, KoszykController sut) { // arrange sut.ModelState.AddModelError(key, error); // act var actual = sut.DodajProduktDoKoszyka(model); // assert actual.ShouldBeOfType <BadRequestObjectResult>(); }
public void DodajProduktDoKoszyka_ShouldAddProductToCart_WhenModelIsValid( [Frozen] Mock <IKoszykService> koszykServiceMock, DodajProduktModel model, KoszykController sut) { // act var actual = sut.DodajProduktDoKoszyka(model); // assert koszykServiceMock.Verify( m => m.DodajProdukt(It.Is <int>(i => i == model.Id), It.Is <decimal>(d => d == model.Ilosc)), Times.Once()); }
public void Get_ShouldReturnOkResult_WhenServiceReturnsData([Frozen] Mock <IKoszykService> koszykServiceMock, IEnumerable <ProduktModel> produkty, KoszykController sut) { // arrange koszykServiceMock.Setup(m => m.PobierzKoszyk()).Returns(produkty); // act var actual = sut.Get().Result; // assert actual.ShouldBeOfType <OkObjectResult>(); (actual as OkObjectResult).Value.ShouldBe(produkty); }