diff --git a/Validator/ProductVariantCombinationValidator.php b/Validator/ProductVariantCombinationValidator.php index 886721350736..77dac54b4ac7 100644 --- a/Validator/ProductVariantCombinationValidator.php +++ b/Validator/ProductVariantCombinationValidator.php @@ -13,11 +13,13 @@ namespace Sylius\Bundle\ProductBundle\Validator; +use Sylius\Bundle\ProductBundle\Validator\Constraint\ProductVariantCombination; use Sylius\Component\Product\Checker\ProductVariantsParityCheckerInterface; use Sylius\Component\Product\Model\ProductVariantInterface; use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\ConstraintValidator; use Symfony\Component\Validator\Exception\UnexpectedTypeException; +use Webmozart\Assert\Assert; final class ProductVariantCombinationValidator extends ConstraintValidator { @@ -39,6 +41,9 @@ public function __construct(ProductVariantsParityCheckerInterface $variantsParit */ public function validate($value, Constraint $constraint): void { + /** @var ProductVariantCombination $constraint */ + Assert::isInstanceOf($constraint, ProductVariantCombination::class); + if (!$value instanceof ProductVariantInterface) { throw new UnexpectedTypeException($value, ProductVariantInterface::class); } diff --git a/Validator/UniqueSimpleProductCodeValidator.php b/Validator/UniqueSimpleProductCodeValidator.php index 488ec30b6e71..15dd3a28f6a4 100644 --- a/Validator/UniqueSimpleProductCodeValidator.php +++ b/Validator/UniqueSimpleProductCodeValidator.php @@ -13,11 +13,14 @@ namespace Sylius\Bundle\ProductBundle\Validator; +use Sylius\Bundle\ProductBundle\Validator\Constraint\UniqueSimpleProductCode; use Sylius\Component\Product\Model\ProductInterface; +use Sylius\Component\Product\Model\ProductVariantInterface; use Sylius\Component\Product\Repository\ProductVariantRepositoryInterface; use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\ConstraintValidator; use Symfony\Component\Validator\Exception\UnexpectedTypeException; +use Webmozart\Assert\Assert; final class UniqueSimpleProductCodeValidator extends ConstraintValidator { @@ -39,6 +42,9 @@ public function __construct(ProductVariantRepositoryInterface $productVariantRep */ public function validate($value, Constraint $constraint): void { + /** @var UniqueSimpleProductCode $constraint */ + Assert::isInstanceOf($constraint, UniqueSimpleProductCode::class); + if (!$value instanceof ProductInterface) { throw new UnexpectedTypeException($value, ProductInterface::class); } @@ -47,6 +53,7 @@ public function validate($value, Constraint $constraint): void return; } + /** @var ProductVariantInterface $existingProductVariant */ $existingProductVariant = $this->productVariantRepository->findOneBy(['code' => $value->getCode()]); if (null !== $existingProductVariant && $existingProductVariant->getProduct()->getId() !== $value->getId()) {