Symfony2 LiipFunctionalTestBundle 覆盖@validator 服务
Symfony2 LiipFunctionalTestBundle overriding @validator service
我正在尝试将 @validator 注入到我的服务中,但是 LiipFunctionalTestBundle 在注入时覆盖了该服务。
admin.image_service:
class: AdminBundle\Service\ImageService
arguments: ["@validator", "@doctrine.orm.admin_entity_manager", "@image_storage_filesystem"]
导致错误
must be an instance of Symfony\Component\Validator\Validator\RecursiveValidator, instance of Liip\FunctionalTestBundle\Validator\DataCollectingValidator given
运行 php bin/console debug:container 结果
liip_functional_test.validator: Liip\FunctionalTestBundle\Validator\DataCollectingValidator
validator: alias for "liip_functional_test.validator"
除了删除 liip 并重构我的所有测试之外,还有什么方法可以解决这个问题?
在您的服务中,您应该输入提示 Interface
而不是准确 class。
Instdead Symfony\Component\Validator\Validator\RecursiveValidator
使用 Symfony\Component\Validator\Validator\ValidatorInterface
- 由 classes(Symfony 和 Liip)实现。
我正在尝试将 @validator 注入到我的服务中,但是 LiipFunctionalTestBundle 在注入时覆盖了该服务。
admin.image_service:
class: AdminBundle\Service\ImageService
arguments: ["@validator", "@doctrine.orm.admin_entity_manager", "@image_storage_filesystem"]
导致错误
must be an instance of Symfony\Component\Validator\Validator\RecursiveValidator, instance of Liip\FunctionalTestBundle\Validator\DataCollectingValidator given
运行 php bin/console debug:container 结果
liip_functional_test.validator: Liip\FunctionalTestBundle\Validator\DataCollectingValidator
validator: alias for "liip_functional_test.validator"
除了删除 liip 并重构我的所有测试之外,还有什么方法可以解决这个问题?
在您的服务中,您应该输入提示 Interface
而不是准确 class。
Instdead Symfony\Component\Validator\Validator\RecursiveValidator
使用 Symfony\Component\Validator\Validator\ValidatorInterface
- 由 classes(Symfony 和 Liip)实现。