Clean up Migrator test cases (#7835)

feature/default_network_editable
Whymarrh Whitby 5 years ago committed by Frankie
parent 948a2ce831
commit 76a31c3175
  1. 1
      app/scripts/background.js
  2. 1
      app/scripts/lib/migrator/index.js
  3. 32
      test/unit/migrations/migrator-test.js

@ -167,6 +167,7 @@ async function initialize () {
async function loadStateFromPersistence () {
// migrations
const migrator = new Migrator({ migrations })
migrator.on('error', console.warn)
// read from disk
// first from preferred, async API:

@ -52,7 +52,6 @@ class Migrator extends EventEmitter {
// rewrite error message to add context without clobbering stack
const originalErrorMessage = err.message
err.message = `MetaMask Migration Error #${migration.version}: ${originalErrorMessage}`
console.warn(err.stack)
// emit error instead of throw so as to not break the run (gracefully fail)
this.emit('error', err)
// stop migrating and use state as is

@ -60,33 +60,27 @@ describe('liveMigrations require list', () => {
describe('Migrator', () => {
const migrator = new Migrator({ migrations: stubMigrations })
it('migratedData version should be version 3', (done) => {
migrator.migrateData(versionedData)
.then((migratedData) => {
it('migratedData version should be version 3', async () => {
const migratedData = await migrator.migrateData(versionedData)
assert.equal(migratedData.meta.version, stubMigrations[2].version)
done()
}).catch(done)
})
it('should match the last version in live migrations', (done) => {
it('should match the last version in live migrations', async () => {
const migrator = new Migrator({ migrations: liveMigrations })
migrator.migrateData(firstTimeState)
.then((migratedData) => {
const migratedData = await migrator.migrateData(firstTimeState)
const last = liveMigrations.length - 1
assert.equal(migratedData.meta.version, liveMigrations[last].version)
done()
}).catch(done)
})
it('should emit an error', function (done) {
this.timeout(15000)
const migrator = new Migrator({ migrations: [{ version: 1, migrate: async () => {
it('should emit an error', async () => {
const migrator = new Migrator({
migrations: [{
version: 1,
async migrate () {
throw new Error('test')
} } ] })
migrator.on('error', () => done())
migrator.migrateData({ meta: { version: 0 } })
.then(() => {
}).catch(done)
},
}],
})
await assert.rejects(migrator.migrateData({ meta: { version: 0 } }))
})
})

Loading…
Cancel
Save