Skip to content

Align probability API tests with debug-only precondition checks - #279

Open
Alexander-Mitrofanov wants to merge 3 commits into
docs/257-base-pair-probability-planfrom
fix/probability-test-preconditions
Open

Alexander-Mitrofanov wants to merge 3 commits into
docs/257-base-pair-probability-planfrom
fix/probability-test-preconditions

Conversation

@Alexander-Mitrofanov

Copy link
Copy Markdown
Collaborator

Release API tests on the current probability branch still invoke invalid regions, conflicting seed lengths and a missing annotation mask even though commit e3479d6 moved their precondition checks behind INTARNA_IN_DEBUG_MODE. The missing mask can be dereferenced in a release test run, producing a segmentation fault rather than a test result.

Guard those invalid-input cases with the same build condition as the implementation. Restore the previously commented unsupported-handler test inside the debug guard. Keep ordinary lifecycle, arithmetic, failure-state, output and valid prediction assertions enabled in both configurations. This changes four test files and ChangeLog; production predictor behavior is unchanged.

Why this was not committed before: this is a new compatibility fix found while validating the recovered October 12 memory port against the probability branch's October 13–14 changes. It was not an old uncommitted implementation. Earlier validation predated the debug-only checks; the remaining invalid-input tests had not all been aligned with them. It is separated from the recovered optimization so Martin can review the test contract independently.

The recovered memory port is stacked on this branch. Validation of the assembled series: GCC 14.4 release make tests -j2 passes all seven suites, including 101,251 API assertions in 98 cases. Debug make tests -j2 also passes all seven suites, including 101,267 API assertions in 98 cases. The mixed explicit-seed test now verifies its conservative capability contract without passing an unsupported handler to the domain constructor. The old release failure log identifies the null-mask crash and invalid-input exception expectations that this change addresses. Staged whitespace checks pass.

Base: docs/257-base-pair-probability-plan / PR #258.

This branch has not been deployed

No deployments
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.

1 participant