public void Ensure_order_can_only_be_marked_as_authorized_when_orderStatus_is_not_cancelled_and_paymentStatus_is_pending() { var order = new Order(); foreach (OrderStatus os in Enum.GetValues(typeof(OrderStatus))) { foreach (PaymentStatus ps in Enum.GetValues(typeof(PaymentStatus))) { foreach (ShippingStatus ss in Enum.GetValues(typeof(ShippingStatus))) { order.OrderStatus = os; order.PaymentStatus = ps; order.ShippingStatus = ss; if (os != OrderStatus.Cancelled && ps == PaymentStatus.Pending) { _orderProcessingService.CanMarkOrderAsAuthorized(order).ShouldBeTrue(); } else { _orderProcessingService.CanMarkOrderAsAuthorized(order).ShouldBeFalse(); } } } } }
public void EnsureOrderCanOnlyBeMarkedAsAuthorizedWhenOrderStatusIsNotCancelledAndPaymentStatusIsPending() { var order = new Order(); foreach (OrderStatus os in Enum.GetValues(typeof(OrderStatus))) { foreach (PaymentStatus ps in Enum.GetValues(typeof(PaymentStatus))) { foreach (ShippingStatus ss in Enum.GetValues(typeof(ShippingStatus))) { order.OrderStatus = os; order.PaymentStatus = ps; order.ShippingStatus = ss; if (os != OrderStatus.Cancelled && ps == PaymentStatus.Pending) { _orderProcessingService.CanMarkOrderAsAuthorized(order).Should().BeTrue(); } else { _orderProcessingService.CanMarkOrderAsAuthorized(order).Should().BeFalse(); } } } } }