function it_does_not_add_violation_if_total_quantity_of_cart_items_do_not_exceed_available_quantity(ExecutionContextInterface $executionContext, AvailabilityCheckerInterface $availabilityChecker, AddToCartCommandInterface $addCartItemCommand, OrderInterface $order, OrderItemInterface $orderItem, OrderItemInterface $existingOrderItem, ProductVariantInterface $productVariant)
 {
     $addCartItemCommand->getCart()->willReturn($order);
     $addCartItemCommand->getCartItem()->willReturn($orderItem);
     $orderItem->getVariant()->willReturn($productVariant);
     $orderItem->getQuantity()->willReturn(10);
     $existingOrderItem->equals($orderItem)->willReturn(true);
     $order->getItems()->willReturn([$existingOrderItem]);
     $existingOrderItem->getQuantity()->willReturn(10);
     $availabilityChecker->isStockSufficient($productVariant, 20)->willReturn(true);
     $executionContext->addViolation(Argument::any(), Argument::any())->shouldNotBeCalled();
     $cartItemAvailabilityConstraint = new CartItemAvailability();
     $cartItemAvailabilityConstraint->message = 'Insufficient stock';
     $this->validate($addCartItemCommand, $cartItemAvailabilityConstraint);
 }