Add regression and benchmark test coverage - #1
Open
visura96 wants to merge 6 commits into
Open
Conversation
LukeLabrie
reviewed
Jun 11, 2026
| """Tests 5-6: rho=0 equilibrium and off-equilibrium IC behavior.""" | ||
|
|
||
| def test_critical_steady_state_one_group(self): | ||
| """Test 5: n and C stay constant at rho=0 with equilibrium precursors.""" |
Collaborator
There was a problem hiding this comment.
Looks like the numbering might be inconsistent throughout the test suite. Maybe we can just get rid of the numbering.
LukeLabrie
reviewed
Jun 11, 2026
| assert np.all(n.y_out[1:] < n0) | ||
| else: | ||
| assert np.all(n.y_out[1:] > n0) | ||
|
|
Removed test numbering
removed test numbering
Removed test numbering
removed test numbering
Rmoving test numbering
Collaborator
|
Hey @visura96, sorry for the delay. Everything looks good to me, just a couple of minor comments above. I also ran all the tests locally and they passed. There's just one commit from develop that needs to be synced in to this branch, but other than that I think we should be good to merge. Nice work. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This pull request adds a regression and benchmark test suite developed during a code review. Review focused on identifying defecincies and improvments of the code.
The changes focus on reproducible testing of the existing point-kinetics, delayed-neutron, thermal-hydraulic, delayed transport, decay-heat, and MSRE benchmark behavior. The intent is to document and preserve current expected behavior while also adding targeted analytical and benchmark checks.
Main changes
Added a structured pytest suite under
tests/testCases/.Added point-kinetics tests covering:
Added thermal-hydraulic tests covering:
Added three-group decay-heat tests:
Updated the MSRE benchmark tests to:
rho_0explicitly in the kinetics input;Added
pytest.iniand shared pytest configuration.Updated
pyproject.tomldependencies required to install and run the package and test suite in a clean environment.Test coverage
The added suite covers 153 tests across the following areas:
rho_0treatment, pre-insertion feedback checks, and representative temperature-stability checks.Test result
The full test suite passes:
Warnings
The test run still produces 157 warnings. These warnings do not cause test failures, but they should not be interpreted as fully resolved.
Most are associated with existing solver and model behavior exercised by the expanded test suite. The review identified the solver-wrapper warning related to non-monotonic or initial-time integration requests as the most technically significant item for follow-up. Other warnings are retained in the test output so they remain visible to future maintainers rather than being broadly suppressed.
Review notes
The analytical tests are intended to verify implementation behavior directly. The MSRE and ANS94 comparisons are benchmark or reduced-order validation checks and should not be interpreted as full independent validation of the library or the underlying reactor models.
The purpose, assumptions, and expected behavior of the individual tests are documented in the test-module, class, and function docstrings. More detailed external test documentation may be added in a future documentation update.
The exploratory notebooks were intentionally excluded from this pull request.