public void TestTotalPrice_WithProductsInCart_ShouldCalculateCorrectly(decimal firstPrice, decimal secondPrice)
        {
            var cart             = new MockedShoppingCart();
            var mockedProductOne = new Mock <IProduct>();
            var mockedProductTwo = new Mock <IProduct>();

            mockedProductOne.SetupGet(x => x.Price).Returns(firstPrice);
            mockedProductTwo.SetupGet(x => x.Price).Returns(secondPrice);

            cart.AddProduct(mockedProductOne.Object);
            cart.AddProduct(mockedProductTwo.Object);

            var result = firstPrice + secondPrice;

            Assert.AreEqual(cart.TotalPrice(), result);
        }
        public void TestCointainsProduct_ShouldReturnTrue()
        {
            var mockedProduct = new Mock <IProduct>();
            var cart          = new MockedShoppingCart();

            cart.AddProduct(mockedProduct.Object);

            Assert.IsTrue(cart.ContainsProduct(mockedProduct.Object));
        }
        public void TestRemoveProduct_ShouldRemoveCorrectly()
        {
            var mockedProduct = new Mock <IProduct>();
            var cart          = new MockedShoppingCart();

            cart.AddProduct(mockedProduct.Object);
            cart.RemoveProduct(mockedProduct.Object);

            Assert.IsFalse(cart.ContainsProduct(mockedProduct.Object));
        }
        public void AddProduct_WhenAddingValidProduct_ShouldAddResepctiveProductCorrectly()
        {
            // arrange
            var productStub = new Mock <IProduct>();
            var mockedCart  = new MockedShoppingCart();

            mockedCart.AddProduct(productStub.Object);
            var expected = mockedCart.Products.First();

            Assert.AreSame(expected, productStub.Object);
        }
Exemple #5
0
        public void AddProduct_WhenProductParamIsValid_ShouldAddProductToList()
        {
            // Arrange
            var mockedProduct = new Mock <IProduct>();
            var shoppingCart  = new MockedShoppingCart();

            // Act
            shoppingCart.AddProduct(mockedProduct.Object);

            // Assert
            Assert.AreEqual(true, shoppingCart.Products.Contains(mockedProduct.Object));
        }