【问题标题】:Simple Laravel Passeport Route Testing简单的 Laravel Passport 路由测试
【发布时间】:2019-10-16 22:36:38
【问题描述】:

在为默认 Passport 5.8 路由执行单元测试时遇到一个小问题。

其实我在get模式下测试了路由/oauth/clients:

/** @test */
   public function getOauthClients()
   {
       $user = factory(User::class)->make();
       $response = $this->actingAs($user)->getJson('/oauth/clients');
       $response->assertSuccessful();
   }

但是当我想在 get 模式下测试默认提供的路由时: /oauth/token ,我不知道我需要遵循哪些步骤。

提前谢谢你。

【问题讨论】:

    标签: laravel phpunit laravel-passport


    【解决方案1】:

    您应该尝试:

    Passport::actingAs(
        factory(User::class)->create()
    );
    $response = $this->getJson('/oauth/clients');
    // ...
    

    Passport 附带了一些用于此目的的测试助手,例如上面的 actuator 方法。

    引用documentation:

    Passport 的actingAs 方法可用于指定当前经过身份验证的用户及其范围。 ActingAs 方法的第一个参数是用户实例,第二个参数是应授予用户令牌的范围数组:

    【讨论】:

    猜你喜欢
    • 2019-10-24
    • 2017-05-23
    • 2021-05-25
    • 2020-03-07
    • 2019-04-26
    • 1970-01-01
    • 2015-08-13
    • 2013-12-26
    • 2020-01-06
    相关资源
    最近更新 更多