public void Checking_out_an_order_not_in_awaiting_process_state_throws_an_InvalidOperationException(OrderState orderState)
            {
                var subject = new OrderProcessor(InventoryService.Object, PaymentService.Object, NotificationService.Object);
                var alreadyProcessedOrder = new Order(OrderTestUtils.GetSimpleShoppingCart(), OrderTestUtils.GetSimplePaymentDetails())
                {
                    State = orderState
                };

                subject.Checkout(alreadyProcessedOrder);
            }
 public void SetUp()
 {
     Order               = new Order(OrderTestUtils.GetSimpleShoppingCart(), OrderTestUtils.GetSimplePaymentDetails());
     InventoryService    = OrderTestUtils.GetSucceedingInventoryService();
     PaymentService      = OrderTestUtils.GetSucceedingPaymentService();
     NotificationService = OrderTestUtils.GetSimpleNotificationService();
 }