Exemplo n.º 1
0
        public void MakeItem_NullProduct_ExceptionThrown()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);

            // act
            Assert.Throws <ArgumentNullException>(() => CustomerOrderItem.MakeCustomerOrderItem(customerOrder, null, 5));
        }
Exemplo n.º 2
0
        public void MakeItem_NullOrder_ExceptionThrown()
        {
            // arrange
            var product = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);

            // act
            Assert.Throws <ArgumentNullException>(() => CustomerOrderItem.MakeCustomerOrderItem(null, product, 5));
        }
Exemplo n.º 3
0
        public void MakeItem_NegativeAmount_ExceptionThrown()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);
            var product       = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);

            // act
            Assert.Throws <ArgumentException>(() => CustomerOrderItem.MakeCustomerOrderItem(customerOrder, product, -5));
        }
Exemplo n.º 4
0
        public void ChangeAmount_AmountBiggerThanPreviousBiggerThanProducts_ExceptionThrown()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);
            var product       = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);
            var customerOrderItem = CustomerOrderItem.MakeCustomerOrderItem(customerOrder, product, 5);

            // act
            Assert.Throws <ArgumentException>(() => customerOrderItem.ChangeAmount(20));
        }
Exemplo n.º 5
0
        public void Delete_OrderItem_Deleted()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);
            var product       = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);
            var customerOrderItem = CustomerOrderItem.MakeCustomerOrderItem(customerOrder, product, 5);

            customerOrderItem.Delete();

            Assert.Throws <InvalidOperationException>(() => customerOrderItem.Delete());
        }
Exemplo n.º 6
0
        public void CDeleteCustomerOrderItem_ValidParameters_CustomerOrderItemDeleted()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);
            var product       = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);
            var customerOrderItem = CustomerOrderItem.MakeCustomerOrderItem(customerOrder, product, 5);

            // act
            customerOrderItem.Delete();

            // assert
            Assert.True(customerOrderItem.IsDeleted);
        }
Exemplo n.º 7
0
        public void ChangePrice_PriceBiggerThanPrevious_PriceUpdated()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);
            var product       = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);
            var customerOrderItem = CustomerOrderItem.MakeCustomerOrderItem(customerOrder, product, 5);

            // act
            customerOrderItem.ChangePrice(20);

            // assert
            Assert.Equal(customerOrderItem.Amount, 5);
            Assert.Equal(customerOrderItem.Deposits.Count, 1);
            Assert.Equal(customerOrderItem.Price, 20);
            Assert.Equal(customerOrderItem.TotalValue, 100);
            Assert.Equal(customerOrder.TotalValue, 100);
            Assert.Equal(customer.TotalSpent, 100);
            Assert.Equal(product.Amount, 10);
        }
Exemplo n.º 8
0
        public void MakeItem_ValidParameters_ItemCreated()
        {
            // arrange
            var customer      = Customer.MakeCustomer("julio", "05526485072", DateTime.Now);
            var customerOrder = CustomerOrder.MakeCustomerOrder(7, customer);
            var product       = Product.MakeProduct("Test product", "Test product", 15, Dimensions.MakeDimensions(11, 12, 13));

            product.UpdateAmount(15);

            // act
            var customerOrderItem = CustomerOrderItem.MakeCustomerOrderItem(customerOrder, product, 5);

            // assert
            Assert.Equal(customerOrderItem.Amount, 5);
            Assert.Equal(customerOrderItem.Deposits.Count, 1);
            Assert.Equal(customerOrderItem.Price, 15);
            Assert.Equal(customerOrderItem.ProductId, product.Id);
            Assert.Equal(customerOrderItem.CustomerOrderId, customerOrder.Id);
            Assert.Equal(customerOrderItem.TotalValue, 75);
            Assert.Equal(customerOrder.TotalValue, 75);
            Assert.Equal(customer.TotalSpent, 75);
            Assert.Equal(product.Amount, 10);
        }