Split T900_distributed.py module into separate sub-tests with self-test.py refactor#636
Closed
klimaj wants to merge 65 commits intoRosettaCommons:mainfrom
Closed
Split T900_distributed.py module into separate sub-tests with self-test.py refactor#636klimaj wants to merge 65 commits intoRosettaCommons:mainfrom
klimaj wants to merge 65 commits intoRosettaCommons:mainfrom
Conversation
This reverts commit 1bd5f00.
Member
|
Also, could you please update PR description to accurately reflect change set? (ie changes to self-test.py needs to be removed) Thanks, |
Member
Author
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.
This PR accomplishes several things:
PyRosettaClusterunit tests specified in theT900_distributedmodule into separate modules (T901–T921).PyRosettaClusterunit test modules into separate modules (as discussed in PR Improving resilience of PyRosettaCluster upon Dask worker preemption #630)pyrosetta.distributedframework unit test runner; allT900-series tests use streaming, except for 2 unit tests inT917that use non-streaming since they spawn additional subprocesses that do not stream.T917.self-test.pyaway from forking processes, using customizablesubprocess.Popeninstead. Also closes an open file handle, pipes standard error to standard output for improved debugging, and prioritizes runningT900-series tests first.PyRosettaClustersuch as better error messages, and temporary directory cleanup during exceptions.TestReproducibilityRemodelTaskUpdatestest case by: (i) serializing double precision Pythonfloatvalues in Rosetta command-line options for precise round-trips through Rosetta C++ double precisioncore::Realvalues, and (ii) serializingPackedPoseobjects via PDB strings for updating task dictionaries between PyRosetta protocols.TestReproducibilityTaskUpdatestest case:random.randbytes(14)->random.getrandbits(14 * 8).to_bytes(14, "little")