aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/scripts/lib/idStore.js12
-rw-r--r--test/unit/idStore-test.js18
2 files changed, 28 insertions, 2 deletions
diff --git a/app/scripts/lib/idStore.js b/app/scripts/lib/idStore.js
index 337bf7254..8b7e3ad3b 100644
--- a/app/scripts/lib/idStore.js
+++ b/app/scripts/lib/idStore.js
@@ -59,6 +59,7 @@ IdentityStore.prototype.createNewVault = function (password, entropy, cb) {
this.configManager.setShowSeedWords(true)
var seedWords = this._idmgmt.getSeed()
+
cb(null, seedWords)
})
}
@@ -124,7 +125,7 @@ IdentityStore.prototype.getSelectedAddress = function () {
return configManager.getSelectedAccount()
}
-IdentityStore.prototype.setSelectedAddress = function (address, cb) {
+IdentityStore.prototype.setSelectedAddressSync = function (address) {
const configManager = this.configManager
if (!address) {
var addresses = this._getAddresses()
@@ -132,7 +133,12 @@ IdentityStore.prototype.setSelectedAddress = function (address, cb) {
}
configManager.setSelectedAccount(address)
- if (cb) return cb(null, address)
+ return address
+}
+
+IdentityStore.prototype.setSelectedAddress = function (address, cb) {
+ const resultAddress = this.setSelectedAddressSync(address)
+ if (cb) return cb(null, resultAddress)
}
IdentityStore.prototype.revealAccount = function (cb) {
@@ -477,6 +483,8 @@ IdentityStore.prototype._createIdmgmt = function (password, seedPhrase, entropy,
configManager: this.configManager,
})
+ this.setSelectedAddressSync()
+
cb()
})
})
diff --git a/test/unit/idStore-test.js b/test/unit/idStore-test.js
index a763eb0e7..1ed1bf9a7 100644
--- a/test/unit/idStore-test.js
+++ b/test/unit/idStore-test.js
@@ -128,5 +128,23 @@ describe('IdentityStore', function() {
done()
})
})
+
+ it('should allow restoring and unlocking again', function (done) {
+ const assertion = assertions[0]
+ idStore.recoverFromSeed(password, assertion.seed, (err) => {
+ assert.ifError(err)
+
+ var received = accounts[0].toLowerCase()
+ var expected = assertion.account.toLowerCase()
+ assert.equal(received, expected)
+
+
+ idStore.submitPassword(password, function(err, account) {
+ assert.ifError(err)
+ assert.equal(account, expected)
+ done()
+ })
+ })
+ })
})
})