You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
2.6 KiB
119 lines
2.6 KiB
const assert = require('assert')
|
|
const migration36 = require('../../../app/scripts/migrations/036')
|
|
|
|
describe('migration #36', () => {
|
|
it('should update the version metadata', (done) => {
|
|
const oldStorage = {
|
|
'meta': {
|
|
'version': 35,
|
|
},
|
|
'data': {},
|
|
}
|
|
|
|
migration36.migrate(oldStorage)
|
|
.then((newStorage) => {
|
|
assert.deepEqual(newStorage.meta, {
|
|
'version': 36,
|
|
})
|
|
done()
|
|
})
|
|
.catch(done)
|
|
})
|
|
|
|
it('should remove privacyMode if featureFlags.privacyMode was false', (done) => {
|
|
const oldStorage = {
|
|
'meta': {},
|
|
'data': {
|
|
'PreferencesController': {
|
|
'featureFlags': {
|
|
'privacyMode': false,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
migration36.migrate(oldStorage)
|
|
.then((newStorage) => {
|
|
assert.deepEqual(newStorage.data.PreferencesController, {
|
|
'featureFlags': {
|
|
},
|
|
})
|
|
done()
|
|
})
|
|
.catch(done)
|
|
})
|
|
|
|
it('should remove privacyMode if featureFlags.privacyMode was true', (done) => {
|
|
const oldStorage = {
|
|
'meta': {},
|
|
'data': {
|
|
'PreferencesController': {
|
|
'featureFlags': {
|
|
'privacyMode': true,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
migration36.migrate(oldStorage)
|
|
.then((newStorage) => {
|
|
assert.deepEqual(newStorage.data.PreferencesController, {
|
|
'featureFlags': {
|
|
},
|
|
})
|
|
done()
|
|
})
|
|
.catch(done)
|
|
})
|
|
|
|
it('should NOT change any state if privacyMode does not exist', (done) => {
|
|
const oldStorage = {
|
|
'meta': {},
|
|
'data': {
|
|
'PreferencesController': {
|
|
'migratedPrivacyMode': true,
|
|
'featureFlags': {
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
migration36.migrate(oldStorage)
|
|
.then((newStorage) => {
|
|
assert.deepEqual(newStorage.data, oldStorage.data)
|
|
done()
|
|
})
|
|
.catch(done)
|
|
})
|
|
|
|
it('should NOT change any state if PreferencesController is missing', (done) => {
|
|
const oldStorage = {
|
|
'meta': {},
|
|
'data': {},
|
|
}
|
|
|
|
migration36.migrate(oldStorage)
|
|
.then((newStorage) => {
|
|
assert.deepEqual(newStorage.data, oldStorage.data)
|
|
done()
|
|
})
|
|
.catch(done)
|
|
})
|
|
|
|
it('should NOT change any state if featureFlags is missing', (done) => {
|
|
const oldStorage = {
|
|
'meta': {},
|
|
'data': {
|
|
'PreferencesController': {
|
|
},
|
|
},
|
|
}
|
|
|
|
migration36.migrate(oldStorage)
|
|
.then((newStorage) => {
|
|
assert.deepEqual(newStorage.data, oldStorage.data)
|
|
done()
|
|
})
|
|
.catch(done)
|
|
})
|
|
})
|
|
|