Skip to content

[Contract] Write Comprehensive Test Suite for All Contract Modules #478

@yusuftomilola

Description

@yusuftomilola

A full test suite covering all contract modules using the Soroban SDK test environment. Tests should cover both happy paths and error cases.

Requirements

Modules to test:

  • tests/mod.rs — shared test helpers, create_env(), mock addresses
  • Core contract: initialisation, admin management, pause/unpause
  • Asset: registration, validation failures, metadata update, ownership transfer, retirement
  • Tokenization: tokenize, mint, burn, transfer, lock/unlock, ownership percentage, dividend distribution
  • Voting: cast vote, tally, double-vote rejection, proposal pass check
  • Transfer restrictions: whitelist add/remove, blocked transfer
  • Detokenization: propose, vote, execute
  • Insurance policies: full lifecycle (create → suspend → renew → cancel)
  • Insurance claims: full lifecycle (file → review → approve → pay; reject → dispute)
  • Leasing: create → return, create → cancel (before start), expire

Coverage targets:

  • Every public function has at least one passing test
  • Every Error variant has at least one test that triggers it
  • Multi-step lifecycle flows tested end-to-end

Acceptance Criteria

  • cargo test passes with zero failures
  • All Error variants triggered in at least one test
  • Tests are isolated (each test creates a fresh Env)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions