Description
There is no single test that exercises the complete invoice lifecycle — creation, contribution, full funding, release, and archival — using realistic token balances and multiple addresses. A comprehensive end-to-end test should serve as a regression suite for all major contract interactions.
Technical Context
Create tests/e2e_lifecycle.rs using soroban_sdk::testutils and the shared helpers from tests/helpers.rs. Simulate three contributors funding an invoice split three ways, verify token balances before and after payout, check event emissions, confirm archival, and assert get_invoice returns InvoiceNotFound while get_archived_invoice succeeds. Use MockAuth for all auth steps.
Acceptance Criteria
Description
There is no single test that exercises the complete invoice lifecycle — creation, contribution, full funding, release, and archival — using realistic token balances and multiple addresses. A comprehensive end-to-end test should serve as a regression suite for all major contract interactions.
Technical Context
Create
tests/e2e_lifecycle.rsusingsoroban_sdk::testutilsand the shared helpers fromtests/helpers.rs. Simulate three contributors funding an invoice split three ways, verify token balances before and after payout, check event emissions, confirm archival, and assertget_invoicereturnsInvoiceNotFoundwhileget_archived_invoicesucceeds. UseMockAuthfor all auth steps.Acceptance Criteria
InvoiceCreated,ContributionMade,InvoiceReleased, etc.) are captured and checkedget_archived_invoiceafter release