Fix more keyring asyncifying tests

This commit is contained in:
Dan Finlay 2016-11-23 11:58:34 -08:00
parent 600f5c31db
commit 230a0ab876
2 changed files with 11 additions and 3 deletions

View File

@ -281,7 +281,7 @@ module.exports = class KeyringController extends EventEmitter {
}
persistAllKeyrings () {
Promise.all(this.keyrings.map((keyring) => {
return Promise.all(this.keyrings.map((keyring) => {
return Promise.all([keyring.type, keyring.serialize()])
.then((serializedKeyringArray) => {
// Label the output values on each serialized Keyring:
@ -314,13 +314,14 @@ module.exports = class KeyringController extends EventEmitter {
const { type, data } = serialized
const Keyring = this.getKeyringClassForType(type)
const keyring = new Keyring()
keyring.deserialize(data)
return keyring.deserialize(data)
.then(() => {
return keyring.getAccounts()
})
.then((accounts) => {
this.setupAccounts(accounts)
this.keyrings.push(keyring)
return keyring
})
}

View File

@ -77,10 +77,17 @@ describe('KeyringController', function() {
keyringController.restoreKeyring(mockSerialized)
.then((keyring) => {
assert.equal(keyring.wallets.length, 1, 'one wallet restored')
assert.equal(keyring.getAccounts()[0], addresses[0])
return keyring.getAccounts()
})
.then((accounts) => {
assert.equal(accounts[0], addresses[0])
mock.verify()
done()
})
.catch((reason) => {
assert.ifError(reason)
done()
})
})
})