create(); $user = User::factory()->create(); $okPolicy = Policy::factory()->create(['tenant_id' => $tenant->id]); PolicyVersion::create([ 'tenant_id' => $tenant->id, 'policy_id' => $okPolicy->id, 'policy_type' => $okPolicy->policy_type, 'version_number' => 1, 'snapshot' => ['ok' => true], 'captured_at' => now(), ]); $missingVersionPolicy = Policy::factory()->create(['tenant_id' => $tenant->id]); $service = app(BulkOperationService::class); $run = $service->createRun( $tenant, $user, 'policy', 'export', [$okPolicy->id, $missingVersionPolicy->id], 2 ); (new BulkPolicyExportJob($run->id, 'Failures Backup'))->handle($service); $run->refresh(); expect($run->status)->toBe('completed_with_errors') ->and($run->succeeded)->toBe(1) ->and($run->failed)->toBe(1) ->and($run->processed_items)->toBe(2); $this->assertDatabaseHas('backup_sets', [ 'tenant_id' => $tenant->id, 'name' => 'Failures Backup', ]); });