У меня есть метод index
в контроллере, подобный этому
public function index()
{
$this->authorize('index', Contact::class);
....
}
и метод index
в ContactPolicy
public function index()
{
return Auth::user()->can('view_Contact');
}
и такой метод проверки
/** @test */
public function a_user_without_permission_can_not_see_contacts()
{
$this->login(['no_permission']);
$this->get('/contacts')
->assertStatus(403);
}
Когда я запускаю свой тест, покажите мне эту ошибку
1) Tests\Feature\AccountTest::a_user_without_permission_can_not_see_contacts Illuminate\Auth\Access\AuthorizationException: это действие неавторизовано.
Примечание 1: когда я меняю свой контроллер на этот, он работает правильно и показывает мне зеленый
public function index()
{
if(Auth::user()->can('view_Contact')){
........
}else
return response()->view('403',['msg' => 'you_not_have_not_permission'])->setStatusCode(403) ;
Примечание 2:
В методе входа в тестовый класс я отправляю параметры разрешений пользователя, и он работает правильно.