decisionFor($tenant); expect($decision->lifecycle)->toBe($expectedLifecycle) ->and($decision->canViewTenantSurface)->toBeTrue() ->and($decision->canSelectAsContext)->toBe($canSelectAsContext) ->and($decision->canOperate)->toBe($canOperate) ->and($decision->canArchive)->toBe($canArchive) ->and($decision->canRestore)->toBe($canRestore) ->and($decision->canResumeOnboarding)->toBe($canResumeOnboarding) ->and($decision->canReferenceInWorkspaceMonitoring)->toBeTrue(); })->with([ 'draft' => [ fn (): Tenant => Tenant::factory()->draft()->create(), TenantLifecycle::Draft, false, false, true, false, true, ], 'onboarding' => [ fn (): Tenant => Tenant::factory()->onboarding()->create(), TenantLifecycle::Onboarding, false, false, true, false, true, ], 'active' => [ fn (): Tenant => Tenant::factory()->active()->create(), TenantLifecycle::Active, true, true, true, false, false, ], 'archived' => [ fn (): Tenant => Tenant::factory()->archived()->create(), TenantLifecycle::Archived, false, false, false, true, false, ], ]);