Replace asserts by errors or warnings #365
Merged
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.
An item on the list of cleanups in #204. This PR builds on the error and warning features added in the course of fixing #191.
The bad practice of using
assert
outside unit tests is removed. Such asserts are ignored by Python when running in optimized mode, meaning that possible errors when loading or dumping files go unnoticed. Eachassert
was checked and one of the following changes was made (roughly in order of decreasing prevalence):Other related changes:
tools/harmonics.py
to a separate file.I will YOLO-merge this on Wednesday, July 10, unless reviewed earlier.
Summary by Sourcery
This pull request replaces
assert
statements with appropriate error or warning raises to ensure proper error handling in optimized mode. It also includes improvements to error messages and checks in the Molekel format, extends some docstrings, and moves tests fortools/harmonics.py
to a separate file.assert
statements with error or warning raises to ensure proper error handling in optimized mode.tools/harmonics.py
to a separate filetools/test_harmonics.py
.