我有一个UsersTableSeeder,它可以生成Passport个人令牌:
$user = factory(User::class)->create([
'email' => 'someone@example.com',
]);
Artisan::call('passport:client', [
'--personal' => 'default',
'--no-interaction' => true,
]);
但是,当我使用$this->artisan('db:seed');
进行测试时,我收到以下错误:
Mockery \ Exception \ BadMethodCallException:收到Mockery_1_Illuminate_Console_OutputStyle :: askQuestion(),但未指定期望
答案 0 :(得分:1)
passport:client
命令失败,因为即使没有提供--no-interaction
标志,它也会询问客户的名字。而且测试不知道该怎么回答,所以失败了。
以下对我有用。
Artisan::call('passport:client --name=<client-name> --no-interaction --personal');
希望有帮助!