Skip to content

Testing checklist ​

A serious smart-contract portfolio should make correctness visible.

Constructor ​

  • accepts 0 bps;
  • accepts 1000 bps;
  • rejects 1001 bps;
  • rejects zero platform wallet.

Lifecycle ​

  • creates valid escrow;
  • increments IDs;
  • rejects invalid creation inputs;
  • funds only from Created and only by the client;
  • delivers only from Funded and only by the freelancer;
  • approves only from Delivered and only by the client;
  • refunds only after the deadline and only from Funded.

Accounting ​

  • fee rounding is correct;
  • freelancer balance is credited correctly;
  • platform balance is credited correctly;
  • withdrawal reduces internal balance;
  • multiple tokens remain isolated;
  • failed token transfers revert appropriately.

Documentation grounded in the current ERC-20 escrow implementation.