mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
tests - add tests for transactions#retryTransaction and transactions#_markNonceDuplicatesDropped
This commit is contained in:
parent
9fd349d740
commit
c6dff98ee1
@ -392,6 +392,49 @@ describe('Transaction Controller', function () {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe('#retryTransaction', function () {
|
||||||
|
it('should create a new txMeta with the same txParams as the original one', function (done) {
|
||||||
|
let txParams = {
|
||||||
|
nonce: '0x00',
|
||||||
|
from: '0xB09d8505E1F4EF1CeA089D47094f5DD3464083d4',
|
||||||
|
to: '0xB09d8505E1F4EF1CeA089D47094f5DD3464083d4',
|
||||||
|
data: '0x0',
|
||||||
|
}
|
||||||
|
txController.txStateManager._saveTxList([
|
||||||
|
{ id: 1, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams },
|
||||||
|
])
|
||||||
|
txController.retryTransaction(1)
|
||||||
|
.then((txMeta) => {
|
||||||
|
assert.equal(txMeta.txParams.nonce, txParams.nonce, 'nonce should be the same')
|
||||||
|
assert.equal(txMeta.txParams.from, txParams.from, 'from should be the same')
|
||||||
|
assert.equal(txMeta.txParams.to, txParams.to, 'to should be the same')
|
||||||
|
assert.equal(txMeta.txParams.data, txParams.data, 'data should be the same')
|
||||||
|
assert.ok(('lastGasPrice' in txMeta), 'should have the key `lastGasPrice`')
|
||||||
|
assert.equal(txController.txStateManager.getTxList().length, 2)
|
||||||
|
done()
|
||||||
|
}).catch(done)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
describe('#_markNonceDuplicatesDropped', function () {
|
||||||
|
it('should mark all nonce duplicates as dropped without marking the confirmed transaction as dropped', function () {
|
||||||
|
txController.txStateManager._saveTxList([
|
||||||
|
{ id: 1, status: 'confirmed', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
{ id: 2, status: 'submitted', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
{ id: 3, status: 'submitted', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
{ id: 4, status: 'submitted', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
{ id: 5, status: 'submitted', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
{ id: 6, status: 'submitted', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
{ id: 7, status: 'submitted', metamaskNetworkId: currentNetworkId, history: [{}], txParams: { nonce: '0x01' } },
|
||||||
|
])
|
||||||
|
txController._markNonceDuplicatesDropped(1)
|
||||||
|
const confirmedTx = txController.txStateManager.getTx(1)
|
||||||
|
const droppedTxs = txController.txStateManager.getFilteredTxList({ nonce: '0x01', status: 'dropped' })
|
||||||
|
assert.equal(confirmedTx.status, 'confirmed', 'the confirmedTx should remain confirmed')
|
||||||
|
assert.equal(droppedTxs.length, 6, 'their should be 6 dropped txs')
|
||||||
|
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
describe('#getPendingTransactions', function () {
|
describe('#getPendingTransactions', function () {
|
||||||
beforeEach(function () {
|
beforeEach(function () {
|
||||||
@ -401,7 +444,7 @@ describe('Transaction Controller', function () {
|
|||||||
{ id: 3, status: 'approved', metamaskNetworkId: currentNetworkId, txParams: {} },
|
{ id: 3, status: 'approved', metamaskNetworkId: currentNetworkId, txParams: {} },
|
||||||
{ id: 4, status: 'signed', metamaskNetworkId: currentNetworkId, txParams: {} },
|
{ id: 4, status: 'signed', metamaskNetworkId: currentNetworkId, txParams: {} },
|
||||||
{ id: 5, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {} },
|
{ id: 5, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams: {} },
|
||||||
{ id: 6, status: 'confimed', metamaskNetworkId: currentNetworkId, txParams: {} },
|
{ id: 6, status: 'confirmed', metamaskNetworkId: currentNetworkId, txParams: {} },
|
||||||
{ id: 7, status: 'failed', metamaskNetworkId: currentNetworkId, txParams: {} },
|
{ id: 7, status: 'failed', metamaskNetworkId: currentNetworkId, txParams: {} },
|
||||||
])
|
])
|
||||||
})
|
})
|
||||||
|
Loading…
x
Reference in New Issue
Block a user