Fix: Add input validation for safe logarithm calculations in AugenPriceSpike #8439
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.
Description
Added validation to ensure that previousPoint and previousPoint2 are non-zero before performing the logarithm operation to prevent division by zero and avoid log(0) errors. Additionally, included a unit test to verify the correctness of the validation logic.
Related Issue
Closes #8435
Motivation and Context
This change is necessary to ensure that logarithm calculations are safe, preventing runtime errors from division by zero and undefined log(0) operations. This improves the stability and reliability of the application by ensuring that invalid input values are properly handled.
Requires Documentation Change
No, this change does not require updates to documentation as it only involves input validation and adding a unit test.
How Has This Been Tested?
Tested the validation logic with unit tests, verifying that the inputs to the logarithm calculation are correctly checked for non-zero values. The unit test confirmed that division by zero and log(0) cases are handled properly, preventing runtime errors.
Types of changes
Checklist:
bug-<issue#>-<description>
orfeature-<issue#>-<description>