Skip to content

feat: cancel-escrow, distributor tests, cross-contract integration, s…#57

Merged
Jayrodri088 merged 1 commit intoStellarState:mainfrom
ritik4ever:feature/cancel-escrow-distributor-tests-smoke
Mar 27, 2026
Merged

feat: cancel-escrow, distributor tests, cross-contract integration, s…#57
Jayrodri088 merged 1 commit intoStellarState:mainfrom
ritik4ever:feature/cancel-escrow-distributor-tests-smoke

Conversation

@ritik4ever
Copy link
Copy Markdown
Contributor

@ritik4ever ritik4ever commented Mar 27, 2026

Issue #41 — invoice-escrow cancel_escrow

  • Add EscrowStatus::Cancelled variant
  • Add Error::EscrowCancelled
  • Add events::escrow_cancelled (invoice_id, seller)
  • Add cancel_escrow: seller-only, Created-state-only, emits event
  • fund_escrow returns EscrowCancelled when status is Cancelled
  • Tests: happy path, event emission, non-seller rejected, funded rejected, fund-after-cancel rejected

Issue #35 — payment-distributor unit tests

  • Add tests: double-init fails, get_admin, zero/negative amount, not-initialized, full balance, multiple recipients, unauthorized caller

Issue #36 — payment-distributor cross-contract integration tests

  • Add integration_test.rs: settle-then-distribute happy path, distribute-while-funded (not settled) failure, unauthorized-caller failure, refund-does-not-affect-distributor
  • Add invoice-escrow and invoice-token as dev-dependencies

Issue #31 — testnet smoke-test harness

  • scripts/smoke-test.sh: build → deploy → init → create → fund → settle, prints pass/fail assertions
  • .github/workflows/smoke-test.yml: workflow_dispatch job for testnet/futurenet

Closes #41
Closes #35
Closes #36
Closes #31

Description

Closes #

Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📝 Documentation update
  • 🎨 UI/UX improvement
  • ♻️ Code refactoring
  • ✅ Test addition or update
  • 🔧 Configuration change

Checklist

  • My code follows the code style of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published

Testing

How to Test

  1. Step one
  2. Step two
  3. Step three

Test Coverage

  • Unit tests added/updated
  • Integration tests added/updated
  • E2E tests added/updated (if applicable)
  • Manual testing completed

Screenshots (if applicable)

Additional Notes

For Reviewers

  • Code quality and readability
  • Test coverage
  • Security implications
  • Performance impact
  • Breaking changes

…moke harness

Issue StellarState#41 — invoice-escrow cancel_escrow
- Add EscrowStatus::Cancelled variant
- Add Error::EscrowCancelled
- Add events::escrow_cancelled (invoice_id, seller)
- Add cancel_escrow: seller-only, Created-state-only, emits event
- fund_escrow returns EscrowCancelled when status is Cancelled
- Tests: happy path, event emission, non-seller rejected, funded rejected, fund-after-cancel rejected

Issue StellarState#35 — payment-distributor unit tests
- Add tests: double-init fails, get_admin, zero/negative amount, not-initialized, full balance, multiple recipients, unauthorized caller

Issue StellarState#36 — payment-distributor cross-contract integration tests
- Add integration_test.rs: settle-then-distribute happy path, distribute-while-funded (not settled) failure, unauthorized-caller failure, refund-does-not-affect-distributor
- Add invoice-escrow and invoice-token as dev-dependencies

Issue StellarState#31 — testnet smoke-test harness
- scripts/smoke-test.sh: build → deploy → init → create → fund → settle, prints pass/fail assertions
- .github/workflows/smoke-test.yml: workflow_dispatch job for testnet/futurenet

Closes StellarState#41
Closes StellarState#35
Closes StellarState#36
Closes StellarState#31
@drips-wave
Copy link
Copy Markdown

drips-wave bot commented Mar 27, 2026

@ritik4ever Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Jayrodri088 Jayrodri088 merged commit 7d0de21 into StellarState:main Mar 27, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants