diff options
Fixed tests
Diffstat (limited to 'test/lib/mock-config-manager.js')
-rw-r--r-- | test/lib/mock-config-manager.js | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/test/lib/mock-config-manager.js b/test/lib/mock-config-manager.js new file mode 100644 index 000000000..fe841f455 --- /dev/null +++ b/test/lib/mock-config-manager.js @@ -0,0 +1,57 @@ +var ConfigManager = require('../../app/scripts/lib/config-manager') +const STORAGE_KEY = 'metamask-persistance-key' +const extend = require('xtend') + +module.exports = function() { + return new ConfigManager({ loadData, setData }) +} + +function loadData () { + var oldData = getOldStyleData() + var newData + try { + newData = JSON.parse(window.localStorage[STORAGE_KEY]) + } catch (e) {} + + var data = extend({ + meta: { + version: 0, + }, + data: { + config: { + provider: { + type: 'testnet', + }, + }, + }, + }, oldData || null, newData || null) + return data +} + +function getOldStyleData () { + var config, wallet, seedWords + + var result = { + meta: { version: 0 }, + data: {}, + } + + try { + config = JSON.parse(window.localStorage['config']) + result.data.config = config + } catch (e) {} + try { + wallet = JSON.parse(window.localStorage['lightwallet']) + result.data.wallet = wallet + } catch (e) {} + try { + seedWords = window.localStorage['seedWords'] + result.data.seedWords = seedWords + } catch (e) {} + + return result +} + +function setData (data) { + window.localStorage[STORAGE_KEY] = JSON.stringify(data) +} |