aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/unit/components/bn-as-decimal-input-test.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/unit/components/bn-as-decimal-input-test.js b/test/unit/components/bn-as-decimal-input-test.js
index 106b3a871..d74e0fa2e 100644
--- a/test/unit/components/bn-as-decimal-input-test.js
+++ b/test/unit/components/bn-as-decimal-input-test.js
@@ -48,4 +48,40 @@ describe('BnInput', function () {
checkValidity () { return true } },
})
})
+
+ it('can tolerate wei precision', function (done) {
+ const renderer = ReactTestUtils.createRenderer()
+
+ let valueStr = '1000000000000000000'
+
+ const value = new BN(valueStr, 10)
+
+ const inputStr = '1000000000.000000001'
+
+ let targetStr = '1000000000000000001'
+
+ const target = new BN(targetStr, 10)
+
+ const precision = 9 // ether precision
+ const scale = 9
+
+ const props = {
+ value,
+ scale,
+ precision,
+ onChange: (newBn) => {
+ assert.equal(newBn.toString(), target.toString(), 'should tolerate increase')
+ done()
+ },
+ }
+
+ const inputComponent = h(BnInput, props)
+ const component = additions.renderIntoDocument(inputComponent)
+ renderer.render(inputComponent)
+ const input = additions.find(component, 'input.hex-input')[0]
+ ReactTestUtils.Simulate.change(input, { preventDefault () {}, target: {
+ value: inputStr,
+ checkValidity () { return true } },
+ })
+ })
})