first(); $role = Role::factory()->create(); $role->permissions()->attach($permission->id); $user = User::factory()->create(); $user->roles()->attach($role->id); Sanctum::actingAs($user); $data = User::factory()->create(); $response = $this->post('/auth/user/'.$data->id,[ "name" => "update user", "email" => "user_update@gmail.com" ]); $response->assertStatus(200); $response->assertJson([ "data" => [ "name" => "update user", "email" => "user_update@gmail.com" ] ]); } /** * A basic feature test example. */ public function test_with_roles_success(): void { $permission = Permission::where("code","auth.user:update")->first(); $role = Role::factory()->create(); $role->permissions()->attach($permission->id); $user = User::factory()->create(); $user->roles()->attach($role->id); Sanctum::actingAs($user); $data = User::factory()->create(); $role2 = Role::factory()->create(); $response = $this->post('/auth/user/'.$data->id,[ "name" => "update user", "email" => "user_update@gmail.com", "role_ids" => [ $role->id, $role2->id ] ]); $response->assertStatus(200); $response->assertJson([ "data" => [ "name" => "update user", "email" => "user_update@gmail.com", "roles" => [ [ "id" => $role->id ], [ "id" => $role2->id ], ] ] ]); } }