create(); $otherTenant = Tenant::factory()->create(); [$user] = createUserWithTenant($otherTenant, role: 'owner'); $this->actingAs($user) ->get(ProviderConnectionResource::getUrl('index', tenant: $tenant)) ->assertStatus(404); }); test('members without capability see provider connection actions disabled with standard tooltip', function () { $tenant = Tenant::factory()->create(); [$user] = createUserWithTenant($tenant, role: 'readonly'); $connection = ProviderConnection::factory()->create([ 'tenant_id' => $tenant->getKey(), 'status' => 'needs_consent', ]); $tenant->makeCurrent(); Filament::setTenant($tenant, true); Livewire::actingAs($user) ->test(ListProviderConnections::class) ->assertTableActionVisible('check_connection', $connection) ->assertTableActionDisabled('check_connection', $connection) ->assertTableActionExists('check_connection', fn ($action): bool => $action->getTooltip() === UiTooltips::insufficientPermission(), $connection); Livewire::actingAs($user) ->test(EditProviderConnection::class, ['record' => $connection->getKey()]) ->assertActionVisible('check_connection') ->assertActionDisabled('check_connection') ->assertActionExists('check_connection', fn ($action): bool => $action->getTooltip() === UiTooltips::insufficientPermission()); }); test('members with capability can see provider connection actions enabled', function () { $tenant = Tenant::factory()->create(); [$user] = createUserWithTenant($tenant, role: 'owner'); $connection = ProviderConnection::factory()->create([ 'tenant_id' => $tenant->getKey(), 'status' => 'needs_consent', ]); $tenant->makeCurrent(); Filament::setTenant($tenant, true); Livewire::actingAs($user) ->test(ListProviderConnections::class) ->assertTableActionVisible('check_connection', $connection) ->assertTableActionEnabled('check_connection', $connection); Livewire::actingAs($user) ->test(EditProviderConnection::class, ['record' => $connection->getKey()]) ->assertActionVisible('check_connection') ->assertActionEnabled('check_connection'); });