Skip to content

test: regression test suite pinning public interface baseline#149

Merged
shakurJJ merged 1 commit into
shakurJJ:mainfrom
MooreTheAnalyst:test/regression-baseline
Jun 25, 2026
Merged

test: regression test suite pinning public interface baseline#149
shakurJJ merged 1 commit into
shakurJJ:mainfrom
MooreTheAnalyst:test/regression-baseline

Conversation

@MooreTheAnalyst

Copy link
Copy Markdown
Contributor

Summary

Implements #118 - Regression Test Suite

Adds comprehensive regression tests that pin the exact function signatures, error codes, event topics, and storage key names emitted by the current contract version. Any future refactor that accidentally changes the public interface will be caught before merge.

Changes

  • test_regression.rs: Complete regression test coverage including:

    • Error codes: All 32 ChainSettleError variants validated against exact u32 values (1-32)
    • Event topics: All 39 event topics verified for consistent Symbol creation
    • Storage keys: All DataKey variants validated via encode/decode round-trip
    • Enum variants: ShipmentStatus and DataKey variants existence checks
    • Baseline counts: Error codes (32), event topics (39), storage keys (35) tracked to catch schema changes
  • .github/workflows/ci.yml: Added regression job:

    • New regression job runs cargo test -- --ignored independently
    • Tests marked #[ignore = "regression"] for explicit triggering

Acceptance Criteria

✓ All event topic Symbols pinned as string definitions
✓ All error code integer values pinned (1-32)
✓ Storage key encoding round-trips verified
✓ Regression suite runs separately via --ignored flag
✓ CI job added to run regression tests independently

Closes #118

@drips-wave

drips-wave Bot commented Jun 25, 2026

Copy link
Copy Markdown

@MooreTheAnalyst 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

@shakurJJ
shakurJJ merged commit 2cd8758 into shakurJJ:main Jun 25, 2026
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test: regression test suite locking current behaviour as baseline

2 participants