import assert from 'assert' import migration25 from '../../../app/scripts/migrations/025' import data from '../../../app/scripts/first-time-state' import { TRANSACTION_STATUSES } from '../../../shared/constants/transaction' const firstTimeState = { meta: {}, data, } const storage = { meta: {}, data: { TransactionController: { transactions: [], }, }, } const transactions = [] while (transactions.length <= 10) { transactions.push({ txParams: { from: '0x8aCce2391c0d510a6c5E5d8f819a678f79b7e675', random: 'stuff', chainId: 2, }, status: TRANSACTION_STATUSES.UNAPPROVED, }) transactions.push({ txParams: { from: '0x8aCce2391c0d510a6c5E5d8f819a678f79b7e675' }, status: TRANSACTION_STATUSES.CONFIRMED, }) } storage.data.TransactionController.transactions = transactions describe('storage is migrated successfully and the txParams.from are lowercase', function () { it('should lowercase the from for unapproved txs', function (done) { migration25 .migrate(storage) .then((migratedData) => { const migratedTransactions = migratedData.data.TransactionController.transactions migratedTransactions.forEach((tx) => { if (tx.status === TRANSACTION_STATUSES.UNAPPROVED) { assert(!tx.txParams.random) } if (tx.status === TRANSACTION_STATUSES.UNAPPROVED) { assert(!tx.txParams.chainId) } }) done() }) .catch(done) }) it('should migrate first time state', function (done) { migration25 .migrate(firstTimeState) .then((migratedData) => { assert.equal(migratedData.meta.version, 25) done() }) .catch(done) }) })