在Prophecy中禁用构造函数

时间:2016-10-26 03:10:04

标签: php symfony prophecy

我有一个Symfony类我试图用Prophecy来模拟。但是,当我揭示该类时,它会执行构造函数。以下是示例代码:

$mock = $this->prophesize('Symfony\Component\HttpFoundation\File\UploadedFile');
$mock->reveal();

返回异常

Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException

这对我来说没有意义,因为Prophecy应该自动禁用构造函数?

1 个答案:

答案 0 :(得分:1)

我有同样的问题,不得不在没有预言的情况下嘲笑:

$uploadedFile = $this->getMockBuilder(UploadedFile::class)->disableOriginalC‌​onstructor()->getMoc‌​k();

可能与https://github.com/phpspec/prophecy/issues/58

有关