aboutsummaryrefslogtreecommitdiffstats
path: root/test/unit/components/bn-as-decimal-input-test.js
diff options
context:
space:
mode:
authorChi Kei Chan <chikeichan@gmail.com>2017-10-19 14:04:54 +0800
committerGitHub <noreply@github.com>2017-10-19 14:04:54 +0800
commit776e8241f0464939cc3049f7155c150e3375c623 (patch)
tree017600778515e74eaf15bf4f889e5b26638c56d7 /test/unit/components/bn-as-decimal-input-test.js
parentde1da7d1b215ade650fc644adf63384a401dc240 (diff)
parenta8bba2f4b7ca714d46b2e1ca405aec3135aa23b2 (diff)
downloadtangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.tar
tangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.tar.gz
tangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.tar.bz2
tangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.tar.lz
tangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.tar.xz
tangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.tar.zst
tangerine-wallet-browser-776e8241f0464939cc3049f7155c150e3375c623.zip
Merge pull request #2402 from chikeichan/merge
[NewUI] Merge master into NewUI-flat
Diffstat (limited to 'test/unit/components/bn-as-decimal-input-test.js')
-rw-r--r--test/unit/components/bn-as-decimal-input-test.js38
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 } },
+ })
+ })
})