Add comprehensive unit and e2e tests for invoice collection, queue logic, and modal interactions:

- Introduced e2e test for "Change Invoice Collection" in `change-invoice-collection.spec.ts`.
- Added unit tests for `CollectedOrderInvoiceOverview.vue` including edit flow for `closed_at`.
- Implemented tests for queue reliability, state handling, and customer actions:
  - `CollectedOrderInvoicesQueueHistory.vue`: polling, error handling, richer diagnostics, and retry logic.
  - `InvoicingBillingPeriod` views: refresh and queue state handling.
- Enhanced test coverage for Stripe queue functionality and related actions.
This commit is contained in:
Jeppe Bundgaard
2026-04-08 15:53:52 +02:00
parent 2b6129db29
commit 8eb315f439
40 changed files with 6673 additions and 1064 deletions
@@ -0,0 +1,31 @@
import { readFileSync } from "node:fs";
import { join } from "node:path";
import { describe, expect, it } from "vitest";
const root = process.cwd();
const stripeManageSource = readFileSync(
join(
root,
"src/views/dashboards/superUserDashboard/collectedOrderInvoice/displays/manage/collectedOrderInvoiceManageStripe.vue"
),
"utf8"
);
describe("collected invoice stripe queue wiring", () => {
it("uses shared queue composable with collected-invoice queue endpoints", () => {
expect(stripeManageSource).toContain("useEconomicQueueJob");
expect(stripeManageSource).toContain("enqueueEndpoint: \"/collected-invoices/stripe/book\"");
expect(stripeManageSource).toContain("statusEndpoint: \"/collected-invoices/economic/queue/status\"");
expect(stripeManageSource).toContain("retryEndpoint: \"/collected-invoices/economic/queue/retry\"");
expect(stripeManageSource).toContain("await stripeTransferQueue.enqueue({});");
expect(stripeManageSource).toContain("await stripeTransferQueue.retry();");
});
it("renders progress and retry states for queued transfers", () => {
expect(stripeManageSource).toContain("isStripeTransferQueuedOrProcessing");
expect(stripeManageSource).toContain("isStripeTransferFailed");
expect(stripeManageSource).toContain("data-testid=\"collected-stripe-progress\"");
expect(stripeManageSource).toContain("data-testid=\"collected-stripe-retry\"");
expect(stripeManageSource).toContain("data-testid=\"collected-stripe-book-invoice\"");
});
});