function it_adds_violation_if_variant_with_given_same_options_already_exists(ExecutionContextInterface $context, ProductInterface $product, ProductVariantInterface $variant, ProductVariantsParityCheckerInterface $variantsParityChecker)
{
$constraint = new ProductVariantCombination(['message' => 'Variant with given options already exists']);
$variant->getProduct()->willReturn($product);
$product->hasVariants()->willReturn(true);
$product->hasOptions()->willReturn(true);
$variantsParityChecker->checkParity($variant, $product)->willReturn(true);
$context->addViolation('Variant with given options already exists', Argument::any())->shouldBeCalled();
$this->validate($variant, $constraint);
}