$resource, 'showRefreshButton' => false, ])->render(); expect($html) ->toContain('inline-flex h-5 max-w-full items-center gap-1 rounded-sm border') ->toContain($expectedText) ->not->toContain('badge-success') ->not->toContain('badge-warning') ->not->toContain('badge-error'); })->with([ 'running healthy' => ['running:healthy', 'Running (healthy)'], 'starting unknown' => ['starting:unknown', 'Starting (unknown)'], 'degraded unhealthy' => ['degraded:unhealthy', 'Degraded (unhealthy)'], 'exited unhealthy' => ['exited:unhealthy', 'Exited'], ]); it('renders service container statuses as shared status badges', function () { $html = view('components.status.services', [ 'complexStatus' => 'running:healthy', 'showRefreshButton' => false, ])->render(); expect($html) ->toContain('inline-flex h-5 max-w-full items-center gap-1 rounded-sm border') ->toContain('Running (healthy)') ->not->toContain('badge-success'); }); it('uses a shared refresh badge for resource status refresh actions', function () { $statusIndex = file_get_contents(resource_path('views/components/status/index.blade.php')); $serviceStatus = file_get_contents(resource_path('views/components/status/services.blade.php')); expect($statusIndex) ->toContain('toContain("wire:click='manualCheckStatus'") ->toContain('wire:loading.attr="disabled"') ->not->toContain('status="Refreshing..."') ->toContain('wire:loading.attr="disabled"') ->not->toContain('status="Refreshing..."') ->not->toContain('toContain('toContain('formatContainerStatus($resource->status)'); expect($serviceStatus) ->toContain('toContain("wire:click='manualCheckStatus'") ->not->toContain(' 'running:unknown', ])->render(); $runningStatus = file_get_contents(resource_path('views/components/status/running.blade.php')); expect($html) ->toContain('No health check') ->toContain('inline-flex h-5 max-w-full items-center gap-1 rounded-sm border') ->not->toContain('toContain('toContain('class="flex items-center gap-1"') ->not->toContain('class="px-2"') ->not->toContain('viewBox="0 0 256 256"'); });