mock(GraphClientInterface::class, function ($mock): void { $mock->shouldReceive('listPolicies')->never(); $mock->shouldReceive('getPolicy')->never(); $mock->shouldReceive('getOrganization')->never(); $mock->shouldReceive('applyPolicy')->never(); $mock->shouldReceive('getServicePrincipalPermissions')->never(); $mock->shouldReceive('request')->never(); }); [$user, $tenant] = createUserWithTenant(role: 'owner'); $this->actingAs($user); $tenant->makeCurrent(); Filament::setTenant($tenant, true); $backupSet = BackupSet::factory()->create([ 'tenant_id' => $tenant->id, 'name' => 'Test backup', ]); $backupItem = BackupItem::factory()->for($backupSet)->for($tenant)->create(); Livewire::test(BackupItemsRelationManager::class, [ 'ownerRecord' => $backupSet, 'pageClass' => EditBackupSet::class, ]) ->callTableAction('remove', $backupItem); Queue::assertPushed(RemovePoliciesFromBackupSetJob::class, function (RemovePoliciesFromBackupSetJob $job) use ($backupSet, $backupItem, $user) { return $job->backupSetId === (int) $backupSet->getKey() && $job->backupItemIds === [(int) $backupItem->getKey()] && $job->initiatorUserId === (int) $user->getKey(); }); $run = OperationRun::query() ->where('tenant_id', $tenant->getKey()) ->where('type', 'backup_set.remove_policies') ->latest('id') ->first(); expect($run)->not->toBeNull(); expect($run->status)->toBe('queued'); expect($run->context['backup_set_id'] ?? null)->toBe((int) $backupSet->getKey()); });