【发布时间】:2015-03-27 11:18:59
【问题描述】:
我正在使用
if (Input::hasFile('index')) doSomething();
检查文件是否已上传。
现在我想编写一个 PHPUnit 测试用例,其中系统需要表现得像“索引”文件已上传。
Input::shouldReceive('hasFile')->andReturn(true)
不工作。
laravel 文档中还有一条注释:你不应该模拟 Request 门面。相反,在运行测试时将所需的输入传递给 call 方法。
所以也许这毕竟不是一个好主意。
我尝试模拟 \Symfony\Component\HttpFoundation\File\UploadedFile 并将其传递给我的调用方法,但在我为系统期望的所有方法定义“shouldReceive”之后,它仍然无法正常工作。
有什么方法可以测试调用,以便Input::hasFile 在不上传实际文件的情况下返回 TRUE?
谢谢
【问题讨论】:
标签: testing laravel file-upload phpunit facade