1 回答
TA贡献1842条经验 获得超12个赞
当您调用actingAs方法时,Laravel 将默认保护更改为admin内部(在这种情况下)。
请使用下面的代码
$defaultGuard = config('auth.defaults.guard');
$admin = factory(\App\Admin::class)->make();
$this->actingAs($admin, 'admin');
\Auth::shouldUse($defaultGuard);
$response = $this->get('/admin');
dd([\Auth::check(), \Auth::guard('admin')->check()]);
您也可以actingAsAdmin在TestCase类中提取一个方法,以便您可以重用该函数。
public function actingAsAdmin($admin) {
$defaultGuard = config('auth.defaults.guard');
$this->actingAs($admin, 'admin');
\Auth::shouldUse($defaultGuard);
return $this;
}
并像下面这样调用这个函数。
$admin = factory(\App\Admin::class)->make();
$response = $this->actingAsAdmin($admin)->get('/admin');
dd([\Auth::check(), \Auth::guard('admin')->check()]);
- 1 回答
- 0 关注
- 118 浏览
添加回答
举报