Add unit and integration tests for economic_transfer_queue and related endpoints, replacing synchronous fallback methods with queue-based processing.

This commit is contained in:
Jeppe Bundgaard
2026-04-08 12:29:57 +02:00
parent ba23ad6e8f
commit c5cd42be7f
17 changed files with 869 additions and 96 deletions
@@ -30,15 +30,19 @@ it('registers collected-invoice queue endpoints in orderInvoicesRoute', function
expect($content)->toContain("class_exists('\\\\classes\\\\economic_transfer_executor')");
expect($content)->toContain("class_exists('\\\\classes\\\\economic_transfer_queue_schema_bootstrap')");
expect($content)->toContain('$this->ensureEconomicTransferQueueIsAvailable();');
expect($content)->not->toContain('exportCollectedInvoiceSynchronously');
expect($content)->not->toContain("require_once __DIR__ . '/../classes/economic_transfer_executor.php';");
expect($content)->toContain('/collected-invoices/economic');
expect($content)->toContain('/collected-invoices/economic/queue');
expect($content)->toContain('/collected-invoices/economic/queue/status');
expect($content)->toContain('/collected-invoices/economic/queue/retry');
expect($content)->toContain('/collected-invoices/stripe/book');
expect($content)->toContain('economic_transfer_queue::TYPE_COLLECTED_INVOICE_EXPORT');
expect($content)->toContain("'job_id' => \$job_id");
expect($content)->toContain("missing queue job id in enqueue response");
expect($content)->toContain("requirePermission('add_collected_invoice_economic')");
expect($content)->toContain("requirePermission('add_collected_invoice_stripe')");
expect($content)->toContain('send_as_is must be a boolean');
expect($content)->toContain("in_array(\$normalized_send_as_is, ['true', '1'], true)");
expect($content)->toContain("'message' => 'Stripe collected invoice export queued'");
});