diff options
author | Frankie <frankie.diamond@gmail.com> | 2018-07-11 06:56:02 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-11 06:56:02 +0800 |
commit | 33e6b9483c61ae240d1c5c832be3eb3b5b00dc7b (patch) | |
tree | cfc56d4ae8499be0e6acab17460921340d580baf /test/unit/app/controllers/transactions | |
parent | f6de948e42ae633d40aef72595a01caa622a280d (diff) | |
parent | b30499886f5f738aeb93df2571cf07e2b9897ae1 (diff) | |
download | tangerine-wallet-browser-33e6b9483c61ae240d1c5c832be3eb3b5b00dc7b.tar.gz tangerine-wallet-browser-33e6b9483c61ae240d1c5c832be3eb3b5b00dc7b.tar.zst tangerine-wallet-browser-33e6b9483c61ae240d1c5c832be3eb3b5b00dc7b.zip |
Merge pull request #4667 from MetaMask/i#3896
transactions - remove rejected transactions from history
Diffstat (limited to 'test/unit/app/controllers/transactions')
-rw-r--r-- | test/unit/app/controllers/transactions/tx-controller-test.js | 13 | ||||
-rw-r--r-- | test/unit/app/controllers/transactions/tx-state-manager-test.js | 19 |
2 files changed, 26 insertions, 6 deletions
diff --git a/test/unit/app/controllers/transactions/tx-controller-test.js b/test/unit/app/controllers/transactions/tx-controller-test.js index d4c5ff0ec..26dc7b656 100644 --- a/test/unit/app/controllers/transactions/tx-controller-test.js +++ b/test/unit/app/controllers/transactions/tx-controller-test.js @@ -353,9 +353,16 @@ describe('Transaction Controller', function () { ]) }) - it('should set the transaction to rejected from unapproved', async function () { - await txController.cancelTransaction(0) - assert.equal(txController.txStateManager.getTx(0).status, 'rejected') + it('should emit a status change to rejected', function (done) { + txController.once('tx:status-update', (txId, status) => { + try { + assert.equal(status, 'rejected', 'status should e rejected') + assert.equal(txId, 0, 'id should e 0') + done() + } catch (e) { done(e) } + }) + + txController.cancelTransaction(0) }) }) diff --git a/test/unit/app/controllers/transactions/tx-state-manager-test.js b/test/unit/app/controllers/transactions/tx-state-manager-test.js index 2f91b1545..88bdaa60e 100644 --- a/test/unit/app/controllers/transactions/tx-state-manager-test.js +++ b/test/unit/app/controllers/transactions/tx-state-manager-test.js @@ -43,14 +43,13 @@ describe('TransactionStateManager', function () { }) describe('#setTxStatusRejected', function () { - it('sets the tx status to rejected', function () { + it('sets the tx status to rejected and removes it from history', function () { const tx = { id: 1, status: 'unapproved', metamaskNetworkId: currentNetworkId, txParams: {} } txStateManager.addTx(tx) txStateManager.setTxStatusRejected(1) const result = txStateManager.getTxList() assert.ok(Array.isArray(result)) - assert.equal(result.length, 1) - assert.equal(result[0].status, 'rejected') + assert.equal(result.length, 0) }) it('should emit a rejected event to signal the exciton of callback', (done) => { @@ -287,4 +286,18 @@ describe('TransactionStateManager', function () { }) }) + + describe('#_removeTx', function () { + it('should remove the transaction from the storage', () => { + txStateManager._saveTxList([ {id: 1} ]) + txStateManager._removeTx(1) + assert(!txStateManager.getFullTxList().length, 'txList should be empty') + }) + + it('should only remove the transaction with ID 1 from the storage', () => { + txStateManager._saveTxList([ {id: 1}, {id: 2} ]) + txStateManager._removeTx(1) + assert.equal(txStateManager.getFullTxList()[0].id, 2, 'txList should have a id of 2') + }) + }) }) |