我用的是表格服务。

$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];

08-26 08:02