Я пытаюсь выполнить тестирование BDD по методу загрузки. Я использую Behat с Mink в проекте symfony2.Как загрузить файл с клиентом Guzzle?
Теперь я в состоянии сделать простой запрос с этим клиентом:
$this->client = $this->mink->getSession('goutte')->getDriver()->getClient();
и
$this->client->request("POST", $url, array('content-type' => 'application/json'), array(), array(), $fields);
без любого вопроса.
Как сделать запрос с файлом? Я попытался это:
$file = new \Symfony\Component\HttpFoundation\File\UploadedFile($path, "video");
$fields = json_encode($table->getColumnsHash()[0]);
$this->client->request("POST", $url, array('content-type' => 'multipart/form-data'), array($file), array(), $fields);
И ошибка я получаю это:
PHP Fatal error: Call to undefined method GuzzleHttp\Stream\Stream::addFile()
Что такое ошибка? Спасибо!
Какова ваша переменная $ table? – jedema
Это объект Behat \ Gherkin \ Node \ TableNode. У вас есть такой объект, когда вы используете эту [нотацию] (http://docs.behat.org/en/v3.0/guides/2.definitions.html#transforming-tables) – stuzzo