diff options
author | Dan Finlay <542863+danfinlay@users.noreply.github.com> | 2017-10-10 05:15:09 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-10 05:15:09 +0800 |
commit | f18615a82abafee1a648e8de6f60ecc54e1aabb4 (patch) | |
tree | 053914da168a427f0c644f81fa02119aca9ce5b5 /test | |
parent | 7f70c866c3a74fadbc34f9b979902b89bba666f5 (diff) | |
parent | d82d9215fbe593293a6badc523218878cfb13dd2 (diff) | |
download | tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.tar tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.tar.gz tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.tar.bz2 tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.tar.lz tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.tar.xz tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.tar.zst tangerine-wallet-browser-f18615a82abafee1a648e8de6f60ecc54e1aabb4.zip |
Merge pull request #2296 from MetaMask/precision-fix
Fix precision to account for small wei increase.
Diffstat (limited to 'test')
-rw-r--r-- | test/unit/components/bn-as-decimal-input-test.js | 38 |
1 files changed, 38 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..58ecc9c89 100644 --- a/test/unit/components/bn-as-decimal-input-test.js +++ b/test/unit/components/bn-as-decimal-input-test.js @@ -48,4 +48,42 @@ describe('BnInput', function () { checkValidity () { return true } }, }) }) + + it('can tolerate wei precision', function (done) { + const renderer = ReactTestUtils.createRenderer() + + let valueStr = '1000000000' + + const value = new BN(valueStr, 10) + const inputStr = '1.000000001' + + + let targetStr = '1000000001' + + const target = new BN(targetStr, 10) + + const precision = 9 // gwei precision + const scale = 9 + + const props = { + value, + scale, + precision, + onChange: (newBn) => { + assert.equal(newBn.toString(), target.toString(), 'should tolerate increase') + const reInput = BnInput.prototype.downsize(newBn.toString(), 9, 9) + assert.equal(reInput.toString(), inputStr, '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 } }, + }) + }) }) |