Я пытаюсь написать тест, который проверяет некоторые действия, выполненные только с зарегистрированными пользователями. так что мне нужно пройти через Laravel 5 процесса аутентификации (с _token)
laravel 5 exception Illuminate Session TokenMismatchException в модульном тесте
это мой тестовый класс
class ImportTest extends TestCase {
private $files = array();
/**
* Creates the application.
*
* @return \Illuminate\Foundation\Application
*/
public function createApplication()
{
$app = require __DIR__.'/../bootstrap/app.php';
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
return $app;
}
private function beTheUser(){
$this->be(User::all()->first());
}
public function testAccessImportPageAjaxLoggedIn(){
$this->beTheUser();
$import = Import::all()->first();
if($import!=null){
$this->call('POST','[email protected]',array(
'import_id' => $import->id,
'_token' => Session::token()
));
$this->assertResponseStatus('404');
}
$this->assertTrue(TRUE);
}
}
и когда я пытаюсь проверить функцию с тест PHPUnit, я получил testing.ERROR: exception Illuminate\Session\TokenMismatchException
кто-нибудь знает обходной путь?
Попробуйте добавить 'Session :: start()' в метод 'setUp()'. – lukasgeiter