Передача пользовательского типа заголовка в тестах Laravel

Мне нужно проверить, что моя аутентификация работает правильно, поэтому я решил изменить текущий тест, который ищет 401, а не 302. Я написал следующее:

public function it_should_not_let_you_access_the_company_end_point_when_not_logged_in() {
$response = $this->get('api/v1/company/', [],[],[],['Content-Type' => 'application/json']);
dd($response->response);
$this->assertEquals('302', $response->getStatusCode());
}

Тип содержимого — json, поэтому тип ответа должен быть ajax, как всегда:

Illuminate\Http\RedirectResponse {#1066
#request: Illuminate\Http\Request {#963
#json: null
#userResolver: Closure {#945
class: "Illuminate\Auth\AuthServiceProvider"this: Illuminate\Auth\AuthServiceProvider {#68 …}
use: array:1 [

Это то, что я вижу в дампе объекта ответа.

Промежуточное программное обеспечение аутентификации настроено так:

public function handle($request, Closure $next)
{
if ($this->auth->guest())
{
if ($request->ajax())
{
return response('Unauthorized.', 401);
}

return redirect()->guest('auth/login');
}

return $next($request);
}

Но $request->ajax() возвращает ложь Мне нужно, чтобы это было правдой и вместо этого сделать 401.

Идеи?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]