2020-01-09 04:34:58 +01:00
|
|
|
import assert from 'assert'
|
|
|
|
import migration29 from '../../../app/scripts/migrations/029'
|
|
|
|
|
2018-11-17 06:27:01 +01:00
|
|
|
const properTime = (new Date()).getTime()
|
|
|
|
const storage = {
|
|
|
|
'meta': {},
|
|
|
|
'data': {
|
|
|
|
'TransactionController': {
|
|
|
|
'transactions': [
|
|
|
|
{ 'status': 'approved', id: 1, submittedTime: 0 },
|
|
|
|
{ 'status': 'approved', id: 2, submittedTime: properTime },
|
|
|
|
{ 'status': 'confirmed', id: 3, submittedTime: properTime },
|
|
|
|
{ 'status': 'submitted', id: 4, submittedTime: properTime },
|
|
|
|
{ 'status': 'submitted', id: 5, submittedTime: 0 },
|
|
|
|
],
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
2020-02-11 17:51:13 +01:00
|
|
|
describe('storage is migrated successfully where transactions that are submitted have submittedTimes', function () {
|
|
|
|
it('should auto fail transactions more than 12 hours old', function (done) {
|
2018-11-17 06:27:01 +01:00
|
|
|
migration29.migrate(storage)
|
2019-07-31 22:17:11 +02:00
|
|
|
.then((migratedData) => {
|
|
|
|
const txs = migratedData.data.TransactionController.transactions
|
2020-08-19 18:27:05 +02:00
|
|
|
const [txMeta1] = txs
|
2019-07-31 22:17:11 +02:00
|
|
|
assert.equal(migratedData.meta.version, 29)
|
2018-11-17 06:27:01 +01:00
|
|
|
|
2019-07-31 22:17:11 +02:00
|
|
|
assert.equal(txMeta1.status, 'failed', 'old tx is auto failed')
|
|
|
|
assert(txMeta1.err.message.includes('too long'), 'error message assigned')
|
2018-11-17 06:27:01 +01:00
|
|
|
|
2019-07-31 22:17:11 +02:00
|
|
|
txs.forEach((tx) => {
|
2019-11-20 01:03:20 +01:00
|
|
|
if (tx.id === 1) {
|
|
|
|
return
|
|
|
|
}
|
2019-07-31 22:17:11 +02:00
|
|
|
assert.notEqual(tx.status, 'failed', 'other tx is not auto failed')
|
|
|
|
})
|
2018-11-17 06:27:01 +01:00
|
|
|
|
2019-07-31 22:17:11 +02:00
|
|
|
done()
|
|
|
|
}).catch(done)
|
2018-11-17 06:27:01 +01:00
|
|
|
})
|
|
|
|
})
|