diff options
author | Davis Haupt <davis.haupt@mongodb.com> | 2022-03-14 19:30:24 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-03-14 21:06:22 +0000 |
commit | 314a51dc20c5558d802af836ee838a6479ea843a (patch) | |
tree | 58a4bf66bb6bde53871b76c3d974a732013d331b /jstests/decimal | |
parent | 29bc5f6ed98cfa7e7cccd3eecfce2dee2711ea1e (diff) | |
download | mongo-314a51dc20c5558d802af836ee838a6479ea843a.tar.gz |
SERVER-64226 Add shell helper to check equality up to a specified number of digits for NumberDecimal
Diffstat (limited to 'jstests/decimal')
-rw-r--r-- | jstests/decimal/decimal_constructors.js | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/jstests/decimal/decimal_constructors.js b/jstests/decimal/decimal_constructors.js index 8af1b6d0f62..630a9b4d3a5 100644 --- a/jstests/decimal/decimal_constructors.js +++ b/jstests/decimal/decimal_constructors.js @@ -47,4 +47,17 @@ assert(numberDecimalsEqual(NumberDecimal('10.20'), NumberDecimal('10.2'))); assert.throws( () => numberDecimalsEqual(NumberDecimal('10.20'), NumberDecimal('10.2'), "Third parameter")); assert.throws(() => numberDecimalsEqual(NumberDecimal('10.20'), "Wrong parameter type")); + +// Verify the behavior of 'numberDecimalsAlmostEqual' helper. +assert(numberDecimalsAlmostEqual(NumberDecimal("10001"), NumberDecimal("10002"), 3)); +assert.neq(numberDecimalsAlmostEqual(NumberDecimal("10001"), NumberDecimal("10002"), 5)); + +// Regression tests for BF-24149. +assert(numberDecimalsAlmostEqual(NumberDecimal("905721242210.0455427920454969568"), + NumberDecimal("905721242210.0453137831269007622941"), + 15)); + +assert.neq(numberDecimalsAlmostEqual(NumberDecimal("905721242210.0455427920454969568"), + NumberDecimal("905721242210.0453137831269007622941"), + 16)); }()); |