Fix CSA_motor_efficiency UnboundLocalError for unsupported pole counts - #98
Open
yuhuavit-hash wants to merge 1 commit into
Open
Fix CSA_motor_efficiency UnboundLocalError for unsupported pole counts#98yuhuavit-hash wants to merge 1 commit into
yuhuavit-hash wants to merge 1 commit into
Conversation
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.
CSA_motor_efficiencyraises anUnboundLocalError(instead of a clear error) when the requested pole count has no standard table: 8-pole motors have no high-efficiency values, and pole counts other than 2/4/6/8 are not in any table.This adds input validation up front, raising a
ValueErrorwith a clear message for unsupported pole counts (matching the style ofcurrent_ideal's phase validation), and documents the supported pole counts in the docstring.Changes
fluids/pump.py: validatepolesbefore table lookuptests/test_pump.py: add boundary cases (poles=8 + high_efficiency, poles=3)Verification
python -m pytest tests/test_pump.py— 12 passedpython -m pytest -m "not slow"— 1764 passed