Skip to content

Add soft assertion aggregation for test cases#20

Merged
V3RON merged 2 commits intomainfrom
issue-18-soft-assertions
May 4, 2026
Merged

Add soft assertion aggregation for test cases#20
V3RON merged 2 commits intomainfrom
issue-18-soft-assertions

Conversation

@V3RON
Copy link
Copy Markdown
Contributor

@V3RON V3RON commented May 4, 2026

Summary

Add assert.soft.* so SkillGym test cases can collect multiple sync assertion failures and report them together at the end of the assert hook.

Context

This wraps the existing Node strict assert surface and SkillGym grouped helpers in an execution-scoped soft assertion collector, then flushes or merges failures in executeRunner as one final AssertionError. It keeps runner failure classification stable, limits the first pass to sync assertions, and adds coverage for pure soft failures, mixed soft plus hard failures, and state isolation between runs.

Fixes #18

Proposed Testing Scenario

Run a suite where one test case calls multiple assert.soft.* helpers and confirm the run fails once with all assertion messages listed in order after the assert hook completes. Then add a hard assertion after a soft failure and confirm the final failure still comes through as a single assertion failure that includes both messages.

V3RON added 2 commits May 4, 2026 11:29
This lets one SkillGym run report multiple assertion failures together without losing assertion failure classification.
@V3RON V3RON merged commit 39393cc into main May 4, 2026
4 checks passed
@V3RON V3RON deleted the issue-18-soft-assertions branch May 4, 2026 10:01
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.

Add Jest/Vitest-style soft assertions for SkillGym test cases

1 participant