create([ 'tenant_id' => $tenant->getKey(), 'type' => 'inventory.sync', 'status' => 'queued', 'outcome' => 'pending', ]); $legacyRun = InventorySyncRun::factory()->create([ 'tenant_id' => $tenant->getKey(), 'operation_run_id' => (int) $opRun->getKey(), ]); $this->actingAs($user) ->get(InventorySyncRunResource::getUrl('view', ['record' => $legacyRun], tenant: $tenant)) ->assertRedirect(OperationRunLinks::tenantlessView($opRun->getKey())); }); it('does not redirect legacy inventory sync run view when not mapped', function (): void { [$user, $tenant] = createUserWithTenant(role: 'owner'); $legacyRun = InventorySyncRun::factory()->create([ 'tenant_id' => $tenant->getKey(), 'operation_run_id' => null, ]); $this->actingAs($user) ->get(InventorySyncRunResource::getUrl('view', ['record' => $legacyRun], tenant: $tenant)) ->assertOk(); }); it('redirects legacy directory group sync run view to canonical OperationRun when mapped', function (): void { [$user, $tenant] = createUserWithTenant(role: 'owner'); $opRun = OperationRun::factory()->create([ 'tenant_id' => $tenant->getKey(), 'type' => 'directory_groups.sync', 'status' => 'queued', 'outcome' => 'pending', ]); $legacyRun = EntraGroupSyncRun::query()->create([ 'tenant_id' => $tenant->getKey(), 'selection_key' => 'groups-v1:all', 'slot_key' => null, 'status' => EntraGroupSyncRun::STATUS_SUCCEEDED, 'operation_run_id' => (int) $opRun->getKey(), ]); $this->actingAs($user) ->get(EntraGroupSyncRunResource::getUrl('view', ['record' => $legacyRun], tenant: $tenant)) ->assertRedirect(OperationRunLinks::tenantlessView($opRun->getKey())); }); it('does not redirect legacy directory group sync run view when not mapped', function (): void { [$user, $tenant] = createUserWithTenant(role: 'owner'); $legacyRun = EntraGroupSyncRun::query()->create([ 'tenant_id' => $tenant->getKey(), 'selection_key' => 'groups-v1:all', 'slot_key' => null, 'status' => EntraGroupSyncRun::STATUS_SUCCEEDED, 'operation_run_id' => null, ]); $this->actingAs($user) ->get(EntraGroupSyncRunResource::getUrl('view', ['record' => $legacyRun], tenant: $tenant)) ->assertOk(); });