Closed rickyoleary closed 5 years ago
Thanks for reporting, would you be interested in debugging this and doing a pull request? I will be happy to assist.
I'm now looking into it, but have to be honest that units/math is not my strongest point, hence the use of this library for my project, so I'm not sure how much help I can be.
Just ask if you get stuck on something you don't understand.
I recommend starting with
https://github.com/angularsen/UnitsNet/blob/master/UnitsNet.Tests/CustomCode/StonePoundsTests.cs
and adding a new test case as you wrote above, then debug why it fails by stepping through the code calls. You should be able to spot where it goes wrong. Use some values that are easy to reason about. My gut feeling tells me we have a rounding-error, so it rounds stones "down" to a more negative value than it should, since we have only tested positive values before.
Bad math using Math.Floor on negative numbers. Was also incorrect for feet/inches. Fix in PR #573.
Fixed in #573 (master) and #574 (v4).
Nuget 3.111 on the way out. https://github.com/angularsen/UnitsNet/releases/tag/UnitsNet%2F3.111.0
Fiddle here.
I'd expect this to show -0 st -1lb but currently displays -1 st -1 lb. P.S Love the library, thanks!