diff options
author | frankiebee <frankie.diamond@gmail.com> | 2018-05-02 04:57:43 +0800 |
---|---|---|
committer | frankiebee <frankie.diamond@gmail.com> | 2018-05-02 04:57:43 +0800 |
commit | a45cb754358ff798dce25fa0b44d6b182abc7692 (patch) | |
tree | 968d6f937dbfa36706c32a872f8bcb6c3215f30a /test | |
parent | 62bf76db53cf0702739d2735edfe8ffcb142b7c2 (diff) | |
download | tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.tar tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.tar.gz tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.tar.bz2 tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.tar.lz tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.tar.xz tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.tar.zst tangerine-wallet-browser-a45cb754358ff798dce25fa0b44d6b182abc7692.zip |
transactions - add a nonce check utility for ui use
Diffstat (limited to 'test')
-rw-r--r-- | test/unit/tx-controller-test.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/unit/tx-controller-test.js b/test/unit/tx-controller-test.js index 0b5c7226a..ddd921652 100644 --- a/test/unit/tx-controller-test.js +++ b/test/unit/tx-controller-test.js @@ -40,6 +40,36 @@ describe('Transaction Controller', function () { txController.nonceTracker.getNonceLock = () => Promise.resolve({ nextNonce: 0, releaseLock: noop }) }) + describe('#isNonceTaken', function () { + it('should return true', function (done) { + txController.txStateManager._saveTxList([ + { id: 1, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {nonce: 0, from: '0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'} }, + { id: 2, status: 'confirmed', metamaskNetworkId: currentNetworkId, txParams: {nonce: 0, from: '0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'} }, + { id: 3, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {nonce: 0, from: '0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'} }, + ]) + txController.isNonceTaken({txParams: {nonce:0, from:'0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'}}) + .then((isNonceTaken) => { + assert(isNonceTaken) + done() + }).catch(done) + + }) + it('should return false', function (done) { + txController.txStateManager._saveTxList([ + { id: 1, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {nonce: 0, from: '0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'} }, + { id: 2, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {nonce: 0, from: '0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'} }, + { id: 3, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {nonce: 0, from: '0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'} }, + ]) + + txController.isNonceTaken({txParams: {nonce:0, from:'0x8ACCE2391C0d510a6C5E5D8f819A678F79B7E675'}}) + .then((isNonceTaken) => { + assert(!isNonceTaken) + done() + }).catch(done) + + }) + }) + describe('#getState', function () { it('should return a state object with the right keys and datat types', function () { const exposedState = txController.getState() |