fix for float parsing of exactly 10.0

This commit is contained in:
2025-07-18 21:19:30 +01:00
parent 3cdd512e8b
commit f147abda5f
2 changed files with 33 additions and 4 deletions

View File

@@ -19,7 +19,7 @@ impl Display for StackCalcError {
match self {
StackCalcError::StackOverflow => f.write_str("stack overflow"),
StackCalcError::StackUnderflow => f.write_str("stack underflow"),
StackCalcError::DecimalError(de) => de.fmt(f),
StackCalcError::DecimalError(de) => Display::fmt(de, f),
}
}
}
@@ -185,4 +185,13 @@ mod tests {
));
Ok(())
}
#[test]
fn test_add_10() -> Result<(), StackCalcError> {
let mut calc = StackCalc::<f64, 3, 5>::default();
calc.push(Decimal::new(false, [3, 0, 0, 0, 0], false, 0))?;
calc.push(Decimal::new(false, [7, 0, 0, 0, 0], false, 0))?;
assert_eq!(calc.add()?, Decimal::new(false, [1, 0, 0, 0, 0], false, 1));
Ok(())
}
}