added tests for removeAccount

feature/default_network_editable
brunobar79 6 years ago
parent de4265c629
commit e89350b19f
  1. 2
      app/scripts/metamask-controller.js
  2. 33
      test/unit/app/controllers/metamask-controller-test.js

@ -629,10 +629,8 @@ module.exports = class MetamaskController extends EventEmitter {
const keyState = await keyringController.addNewAccount(keyring) const keyState = await keyringController.addNewAccount(keyring)
const newAccounts = await keyringController.getAccounts() const newAccounts = await keyringController.getAccounts()
this.preferencesController.setAddresses(newAccounts) this.preferencesController.setAddresses(newAccounts)
console.log('new vs old', newAccounts, oldAccounts)
newAccounts.forEach(address => { newAccounts.forEach(address => {
if (!oldAccounts.includes(address)) { if (!oldAccounts.includes(address)) {
console.log('new address found', address)
this.preferencesController.setAccountLabel(address, `TREZOR #${parseInt(index, 10) + 1}`) this.preferencesController.setAccountLabel(address, `TREZOR #${parseInt(index, 10) + 1}`)
this.preferencesController.setSelectedAddress(address) this.preferencesController.setSelectedAddress(address)
} }

@ -485,6 +485,39 @@ describe('MetaMaskController', function () {
}) })
}) })
describe('#removeAccount', function () {
let ret
const addressToRemove = '0x1'
beforeEach(async function () {
sinon.stub(metamaskController.preferencesController, 'removeAddress')
sinon.stub(metamaskController.accountTracker, 'removeAccount')
sinon.stub(metamaskController.keyringController, 'removeAccount')
ret = await metamaskController.removeAccount(addressToRemove)
})
afterEach(function () {
metamaskController.keyringController.removeAccount.restore()
metamaskController.accountTracker.removeAccount.restore()
metamaskController.preferencesController.removeAddress.restore()
})
it('should call preferencesController.removeAddress', async function () {
assert(metamaskController.preferencesController.removeAddress.calledWith(addressToRemove))
})
it('should call accountTracker.removeAccount', async function () {
assert(metamaskController.accountTracker.removeAccount.calledWith(addressToRemove))
})
it('should call keyringController.removeAccount', async function () {
assert(metamaskController.keyringController.removeAccount.calledWith(addressToRemove))
})
it('should return address', async function () {
assert.equal(ret, '0x1')
})
})
describe('#clearSeedWordCache', function () { describe('#clearSeedWordCache', function () {
it('should have set seed words', function () { it('should have set seed words', function () {

Loading…
Cancel
Save