create(['status' => 'active']); [$user, $tenantA] = createUserWithTenant($tenantA, role: 'owner', workspaceRole: 'readonly'); $tenantB = Tenant::factory()->create([ 'status' => 'active', 'workspace_id' => (int) $tenantA->workspace_id, 'name' => 'Forbidden Tenant', ]); OperationRun::factory()->create([ 'tenant_id' => (int) $tenantA->getKey(), 'workspace_id' => (int) $tenantA->workspace_id, 'type' => 'inventory_sync', 'initiator_name' => 'Accessible run', ]); OperationRun::factory()->create([ 'tenant_id' => (int) $tenantB->getKey(), 'workspace_id' => (int) $tenantB->workspace_id, 'type' => 'policy.sync', 'initiator_name' => 'Forbidden run', ]); $response = $this->actingAs($user) ->withSession([WorkspaceContext::SESSION_KEY => (int) $tenantA->workspace_id]) ->get('/admin') ->assertOk() ->assertSee('Inventory sync') ->assertDontSee('Forbidden Tenant') ->assertDontSee('Policy sync'); expect((string) $response->getContent())->not->toContain('wire:poll'); });