actingAs($user = User::factory()->withPersonalCompany()->create()); $user->currentCompany->users()->attach( $otherUser = User::factory()->create(), ['role' => 'admin'] ); $component = Livewire::test(CompanyEmployeeManager::class, ['company' => $user->currentCompany]) ->set('managingRoleFor', $otherUser) ->set('currentRole', 'editor') ->call('updateRole'); $this->assertTrue($otherUser->fresh()->hasCompanyRole( $user->currentCompany->fresh(), 'editor' )); } public function test_only_company_owner_can_update_company_employee_roles(): void { $user = User::factory()->withPersonalCompany()->create(); $user->currentCompany->users()->attach( $otherUser = User::factory()->create(), ['role' => 'admin'] ); $this->actingAs($otherUser); $component = Livewire::test(CompanyEmployeeManager::class, ['company' => $user->currentCompany]) ->set('managingRoleFor', $otherUser) ->set('currentRole', 'editor') ->call('updateRole') ->assertStatus(403); $this->assertTrue($otherUser->fresh()->hasCompanyRole( $user->currentCompany->fresh(), 'admin' )); } }