我正在模拟几个类,以便在Symfony 2.7应用程序中创建单元测试。我的测试之一包括以下代码:
$this->entityManagerMock
->method('getRepository')
->willReturn(
new EntityRepository($this->entityManagerMock, DistributedVideo::class)
);
...并且运行测试时,我收到以下投诉:
传递给Doctrine \ ORM \ EntityRepository :: __ construct()的参数2必须 是Doctrine \ ORM \ Mapping \ ClassMetadata的实例,给出字符串, 呼入 /usr/src/app/src/MyCompany/AppBundle/Tests/Distribution/DistributionServiceTest.php 在第139行并已定义
如何获取Doctrine似乎想要的元数据对象的实例?
(目前,我将尝试使用createMock
模拟该项目,但我也对其他答案感兴趣。)