我用的是表格服务。
$files = Input::file('my_file');
我试图测试它,但我似乎无法正确地模拟输入。文档说不要嘲笑请求外观。没有提到输入facade,尽管它们都指向ioc容器中的同一个类。
我试过几种方法,但都不管用。有什么想法吗?
$mockInput = Mockery::mock('\Illuminate\Http\Request');
$mockInput->shouldReceive('file')->andReturn($my_test_data);
Input::swap($mockInput);
和
Input::shouldReceive('file')->andReturn($my_test_data);
最佳答案
显然,我错了。这确实有效。把它放在正确的测试中确实有帮助。
$mockInput = Mockery::mock('\Illuminate\Http\Request');
$mockInput->shouldReceive('file')->andReturn($my_test_data);
Input::swap($mockInput);
另外,我创建了一个uploadedfile对象,并将其返回:
$media = new \Symfony\Component\HttpFoundation\File\UploadedFile(
$path,
'orig_name_1.jpg'
);
$my_test_data = [0 => $media];