Ларавел 5.2 | Тестирование UploadedFile Пропускает значение $ test после публикации. Ошибка?

Обновление 2016/04/26 11:30 GMT + 2 Обходной путь

Начиная с Laravel 5.2.15, параметр $ test удаляется, но нет явной причины, потому что в UploadedFile Symfony по-прежнему есть параметр $ test.

Обходной путь должен временно использовать Laravel 5.2.14.

Обновление 2016/04/26 11:00 GMT + 2

Собственный UploadedFile от Laravel не передает параметр $ test. Смотрите эти ресурсы:

https://github.com/laravel/framework/issues/12620https://github.com/laravel/framework/commit/5062a9b42632e55ee90b7397141c0b12622447e1

Я знаю, есть еще один вопрос:Как проверить загрузку файлов в Laravel 5.2, но отмеченный ответ не работает для меня.

Прецедент

Я создаю экземпляр класса UploadedFile Symfony и я устанавливаю$test вtrue, Я отправляю файл вfile/upload.

class FileControllerTest extends TestCase
{
    use \Illuminate\Foundation\Testing\DatabaseTransactions;

    private $file;

    public function setUp()
    {
        parent::setUp();

        $this->file = new Symfony\Component\HttpFoundation\File\UploadedFile(
            public_path() . '/examples/example.jpg',
            'example.jpg',
            'image/jpeg',
            filesize(public_path() . '/examples/example.jpg'),
            null,
            true // for $test
        );
    }

    /** @test */
    public function it_uploads_a_valid_file()
    {
        var_dump($this->file); // $test = true
        $this->call('POST', 'file/upload', [], [], ['file' => $this->file],
            ['accept' => 'application/json']);

        $this->assertResponseOk();
    }
}
контроллер
namespace App\Http\Controllers;

class FileController extends Controller
{
    public function upload(Request $request)
    {
        var_dump($request->file('file')); // $test = false

        return [];
    }
}
проблемаФайл для публикации имеет аргументtrue за$testРазмещенный файл прибывает вupload()

$request->file('file') содержит правильные аргументы, но

$ тест являетсяложный

Кажется, что аргумент $ test не пройден почтовым вызовом. Это ошибка?

Ответы на вопрос(1)

Ваш ответ на вопрос