コード例 #1
0
        static void Main(string[] args)
        {
            var orderProcessor = new orderProcessor();
            var order          = new Order {
                DatePlaced = DateTime.now, TotalPrice = 100f
            };

            orderProcessor.Process(order)
        }
コード例 #2
0
        public void Process_OrderIsAlreadyShipped_ThrowsAnException()
        {
            // need to pass a fake object that is always working to isolate the order processor
            var orderProcessor = new orderProcessor(new FakeShippingCalculator());
            // isShipped will be true
            var order = new Order
            {
                Shipment = new Shipment()
            };

            orderProcessor.Process(order);
        }
コード例 #3
0
        public void Process_OrderIsNotShipped_ShouldSetTheShipmentPropertyOfTheOrder()
        {
            var orderProcessor = new orderProcessor(new FakeShippingCalculator());
            // isShipped will be false in this new order
            var order = new Order();

            orderProcessor.Process(order);

            // isShipped should be true
            Assert.IsTrue(order.IsShipped);
            // cost should be one
            Assert.AreEqual(1, order.Shipment.Cost);
            // date should be this
            Assert.AreEqual(DateTime.Today.AddDays(1), order.Shipment.ShippingDate);
        }