diff options
author | trejgun <trejgun@gmail.com> | 2018-06-24 17:48:02 +0800 |
---|---|---|
committer | trejgun <trejgun@gmail.com> | 2018-06-24 17:48:02 +0800 |
commit | 5d034006e8a73c7d64dee22c856c3733643454f8 (patch) | |
tree | 903d3da4af5954a179f13e58006d3deecb4cb052 /ui/app | |
parent | 299abee666d7f8347e062afff4f2fae47c7f6968 (diff) | |
download | dexon-wallet-5d034006e8a73c7d64dee22c856c3733643454f8.tar.gz dexon-wallet-5d034006e8a73c7d64dee22c856c3733643454f8.tar.zst dexon-wallet-5d034006e8a73c7d64dee22c856c3733643454f8.zip |
fixes #4307 BigNumber casting issue
Diffstat (limited to 'ui/app')
-rw-r--r-- | ui/app/conversion-util.js | 2 | ||||
-rw-r--r-- | ui/app/conversion-util.test.js | 23 |
2 files changed, 24 insertions, 1 deletions
diff --git a/ui/app/conversion-util.js b/ui/app/conversion-util.js index 100402d9..90c2226e 100644 --- a/ui/app/conversion-util.js +++ b/ui/app/conversion-util.js @@ -140,7 +140,7 @@ const addCurrencies = (a, b, options = {}) => { bBase, ...conversionOptions } = options - const value = (new BigNumber(a, aBase)).add(b, bBase) + const value = (new BigNumber(a.toString(), aBase)).add(b.toString(), bBase) return converter({ value, diff --git a/ui/app/conversion-util.test.js b/ui/app/conversion-util.test.js new file mode 100644 index 00000000..c3726485 --- /dev/null +++ b/ui/app/conversion-util.test.js @@ -0,0 +1,23 @@ +import assert from 'assert' +import {addCurrencies} from './conversion-util' + + + +describe('conversion utils', () => { + describe.only('addCurrencies()', () => { + it('add whole numbers', () => { + const result = addCurrencies(3, 5) + assert.equal(result.toNumber(), 8) + }) + + it('add decimals', () => { + const result = addCurrencies(1.3, 1.5) + assert.equal(result.toNumber(), 2.8) + }) + + it('add repeating decimals', () => { + const result = addCurrencies(1/3, 1/7) + assert.equal(result.toNumber(), 0.47619047619047616) + }) + }) +}) |