From 0b16c8b0384ea0972cbb6805442afc00d8028c8a Mon Sep 17 00:00:00 2001 From: Jamie M Date: Wed, 15 Feb 2023 11:52:36 +0000 Subject: [PATCH] handle tokens.known being undefined --- main/store/migrations/index.js | 8 +++++--- test/main/store/migrations/index.test.js | 6 ++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/main/store/migrations/index.js b/main/store/migrations/index.js index c87f1e309..d887cff79 100644 --- a/main/store/migrations/index.js +++ b/main/store/migrations/index.js @@ -758,11 +758,13 @@ const migrations = { }, 32: (initial) => { const dodgyAddress = '0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000' - - Object.entries(initial.main.tokens.known).forEach(([address, knownTokens]) => { - initial.main.tokens.known[address] = knownTokens.filter(({ address }) => address !== dodgyAddress) + const knownTokens = initial.main.tokens.known || {} + Object.entries(knownTokens).forEach(([address, tokens]) => { + knownTokens[address] = tokens.filter(({ address }) => address !== dodgyAddress) }) + initial.main.tokens.known = knownTokens + const nameNotSet = (chainId) => { const meta = initial.main.networksMeta.ethereum[chainId] return meta && !meta.nativeCurrency.name diff --git a/test/main/store/migrations/index.test.js b/test/main/store/migrations/index.test.js index 3424f44c1..e5f3a3155 100644 --- a/test/main/store/migrations/index.test.js +++ b/test/main/store/migrations/index.test.js @@ -1358,6 +1358,12 @@ describe('migration 32', () => { expect(known.find(({ address }) => address === '0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000')).toBeFalsy() }) + it('should set known tokens as an empty object if currently undefined', () => { + delete state.main.tokens.known + const newState = migrations.apply(state, 32) + expect(newState.main.tokens.known).toEqual({}) + }) + it('should not remove any other known tokens', () => { const oldKnown = getKnownTokens(state) const updatedState = migrations.apply(state, 32)