actingAs($user = User::factory()->withPersonalTeam()->create()); $user->currentTeam->users()->attach( $otherUser = User::factory()->create(), ['role' => 'admin'] ); Livewire::test(TeamMemberManager::class, ['team' => $user->currentTeam]) ->set('managingRoleFor', $otherUser) ->set('currentRole', 'editor') ->call('updateRole'); expect($otherUser->fresh()->hasTeamRole( $user->currentTeam->fresh(), 'editor' ))->toBeTrue(); }); test('only team owner can update team member roles', function () { $user = User::factory()->withPersonalTeam()->create(); $user->currentTeam->users()->attach( $otherUser = User::factory()->create(), ['role' => 'admin'] ); $this->actingAs($otherUser); Livewire::test(TeamMemberManager::class, ['team' => $user->currentTeam]) ->set('managingRoleFor', $otherUser) ->set('currentRole', 'editor') ->call('updateRole') ->assertStatus(403); expect($otherUser->fresh()->hasTeamRole( $user->currentTeam->fresh(), 'admin' ))->toBeTrue(); });