import assert from 'assert' import migration36 from '../../../app/scripts/migrations/036' describe('migration #36', function () { it('should update the version metadata', function (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', function (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', function (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', function (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', function (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', function (done) { const oldStorage = { 'meta': {}, 'data': { 'PreferencesController': { }, }, } migration36.migrate(oldStorage) .then((newStorage) => { assert.deepEqual(newStorage.data, oldStorage.data) done() }) .catch(done) }) })