diff options
author | kumavis <kumavis@users.noreply.github.com> | 2016-12-02 02:30:31 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-02 02:30:31 +0800 |
commit | eb7cf2bf310419246b59044e80c88a2bcabb9c34 (patch) | |
tree | f1f3bff45a4e6951bb073aa6684791908901afb3 /app | |
parent | 5af41573638e438f4af496afe18d9a01f89c7733 (diff) | |
parent | c43178360203b4571d9e00880b5bf2806908c179 (diff) | |
download | tangerine-wallet-browser-eb7cf2bf310419246b59044e80c88a2bcabb9c34.tar.gz tangerine-wallet-browser-eb7cf2bf310419246b59044e80c88a2bcabb9c34.tar.zst tangerine-wallet-browser-eb7cf2bf310419246b59044e80c88a2bcabb9c34.zip |
Merge pull request #904 from MetaMask/BetterIntegrationTest
Made integration test suite better, added a step to story
Diffstat (limited to 'app')
-rw-r--r-- | app/scripts/keyring-controller.js | 13 | ||||
-rw-r--r-- | app/scripts/lib/config-manager.js | 5 |
2 files changed, 12 insertions, 6 deletions
diff --git a/app/scripts/keyring-controller.js b/app/scripts/keyring-controller.js index ac9409dbb..40c9695dd 100644 --- a/app/scripts/keyring-controller.js +++ b/app/scripts/keyring-controller.js @@ -167,7 +167,7 @@ module.exports = class KeyringController extends EventEmitter { this.configManager.setSelectedAccount(hexAccount) return this.setupAccounts(accounts) }) - .then(this.persistAllKeyrings.bind(this)) + .then(this.persistAllKeyrings.bind(this, password)) .then(this.fullUpdate.bind(this)) } @@ -226,9 +226,8 @@ module.exports = class KeyringController extends EventEmitter { }) .then((keyrings) => { this.keyrings = keyrings - return this.setupAccounts() + return this.fullUpdate() }) - .then(this.fullUpdate.bind(this)) } // Add New Keyring @@ -250,6 +249,7 @@ module.exports = class KeyringController extends EventEmitter { this.keyrings.push(keyring) return this.setupAccounts(accounts) }) + .then(() => { return this.password }) .then(this.persistAllKeyrings.bind(this)) .then(() => { return keyring @@ -692,6 +692,9 @@ module.exports = class KeyringController extends EventEmitter { // Takes an account address and an iterator representing // the current number of named accounts. getBalanceAndNickname (account) { + if (!account) { + throw new Error('Problem loading account.') + } const address = normalize(account) this.ethStore.addAccount(address) return this.createNickname(address) @@ -725,7 +728,9 @@ module.exports = class KeyringController extends EventEmitter { // encrypts that array with the provided `password`, // and persists that encrypted string to storage. persistAllKeyrings (password = this.password) { - this.password = password + if (typeof password === 'string') { + this.password = password + } return Promise.all(this.keyrings.map((keyring) => { return Promise.all([keyring.type, keyring.serialize()]) .then((serializedKeyringArray) => { diff --git a/app/scripts/lib/config-manager.js b/app/scripts/lib/config-manager.js index 8e63265d2..59cc2b63c 100644 --- a/app/scripts/lib/config-manager.js +++ b/app/scripts/lib/config-manager.js @@ -3,6 +3,7 @@ const MetamaskConfig = require('../config.js') const migrations = require('./migrations') const rp = require('request-promise') const ethUtil = require('ethereumjs-util') +const normalize = require('./sig-util').normalize const TESTNET_RPC = MetamaskConfig.network.testnet const MAINNET_RPC = MetamaskConfig.network.mainnet @@ -273,13 +274,13 @@ ConfigManager.prototype.getWalletNicknames = function () { } ConfigManager.prototype.nicknameForWallet = function (account) { - const address = ethUtil.addHexPrefix(account.toLowerCase()) + const address = normalize(account) const nicknames = this.getWalletNicknames() return nicknames[address] } ConfigManager.prototype.setNicknameForWallet = function (account, nickname) { - const address = ethUtil.addHexPrefix(account.toLowerCase()) + const address = normalize(account) const nicknames = this.getWalletNicknames() nicknames[address] = nickname var data = this.getData() |