fix tx tests

feature/default_network_editable
brunobar79 6 years ago
parent 61a279204a
commit b77cc3d969
  1. 4
      app/scripts/controllers/transactions/index.js
  2. 6
      app/scripts/metamask-controller.js
  3. 26
      test/unit/app/controllers/metamask-controller-test.js
  4. 3
      ui/app/components/pages/create-account/connect-hardware/account-list.js

@ -289,10 +289,10 @@ class TransactionController extends EventEmitter {
// sign tx
const fromAddress = txParams.from
const ethTx = new Transaction(txParams)
const signedTx = await this.signEthTx(ethTx, fromAddress)
await this.signEthTx(ethTx, fromAddress)
// set state to signed
this.txStateManager.setTxStatusSigned(txMeta.id)
const rawTx = ethUtil.bufferToHex(signedTx.serialize())
const rawTx = ethUtil.bufferToHex(ethTx.serialize())
return rawTx
}

@ -549,14 +549,14 @@ module.exports = class MetamaskController extends EventEmitter {
keyringName = LedgerBridgeKeyring.type
break
default:
throw new Error('MetamaskController:connectHardware - Unknown device')
throw new Error('MetamaskController:getKeyringForDevice - Unknown device')
}
let keyring = await this.keyringController.getKeyringsByType(keyringName)[0]
if (!keyring) {
keyring = await this.keyringController.addNewKeyring(keyringName)
}
if (hdPath) {
keyring.hdPath = hdPath
if (hdPath && keyring.setHdPath) {
keyring.setHdPath(hdPath)
}
keyring.network = this.networkController.getProviderConfig().type

@ -226,9 +226,9 @@ describe('MetaMaskController', function () {
it('should throw if it receives an unknown device name', async function () {
try {
await metamaskController.connectHardware('Some random device name', 0)
await metamaskController.connectHardware('Some random device name', 0, `m/44/0'/0'`)
} catch (e) {
assert.equal(e, 'Error: MetamaskController:connectHardware - Unknown device')
assert.equal(e, 'Error: MetamaskController:getKeyringForDevice - Unknown device')
}
})
@ -242,14 +242,24 @@ describe('MetaMaskController', function () {
assert.equal(keyrings.length, 1)
})
it('should add the Ledger Hardware keyring', async function () {
sinon.spy(metamaskController.keyringController, 'addNewKeyring')
await metamaskController.connectHardware('ledger', 0).catch((e) => null)
const keyrings = await metamaskController.keyringController.getKeyringsByType(
'Ledger Hardware'
)
assert.equal(metamaskController.keyringController.addNewKeyring.getCall(0).args, 'Ledger Hardware')
assert.equal(keyrings.length, 1)
})
})
describe('checkHardwareStatus', function () {
it('should throw if it receives an unknown device name', async function () {
try {
await metamaskController.checkHardwareStatus('Some random device name')
await metamaskController.checkHardwareStatus('Some random device name', `m/44/0'/0'`)
} catch (e) {
assert.equal(e, 'Error: MetamaskController:checkHardwareStatus - Unknown device')
assert.equal(e, 'Error: MetamaskController:getKeyringForDevice - Unknown device')
}
})
@ -265,7 +275,7 @@ describe('MetaMaskController', function () {
try {
await metamaskController.forgetDevice('Some random device name')
} catch (e) {
assert.equal(e, 'Error: MetamaskController:forgetDevice - Unknown device')
assert.equal(e, 'Error: MetamaskController:getKeyringForDevice - Unknown device')
}
})
@ -282,7 +292,7 @@ describe('MetaMaskController', function () {
})
})
describe('unlockTrezorAccount', function () {
describe('unlockHardwareWalletAccount', function () {
let accountToUnlock
let windowOpenStub
let addNewAccountStub
@ -305,8 +315,8 @@ describe('MetaMaskController', function () {
sinon.spy(metamaskController.preferencesController, 'setAddresses')
sinon.spy(metamaskController.preferencesController, 'setSelectedAddress')
sinon.spy(metamaskController.preferencesController, 'setAccountLabel')
await metamaskController.connectHardware('trezor', 0).catch((e) => null)
await metamaskController.unlockTrezorAccount(accountToUnlock).catch((e) => null)
await metamaskController.connectHardware('trezor', 0, `m/44/0'/0'`)
await metamaskController.unlockHardwareWalletAccount('trezor', accountToUnlock, `m/44/0'/0'`)
})
afterEach(function () {

@ -23,7 +23,8 @@ class AccountList extends Component {
}
goToNextPage = () => {
if (this.props.accounts === 5) {
// If we have < 5 accounts, it's restricted by BIP-44
if (this.props.accounts.length === 5) {
this.props.getPage(this.props.device, 1, this.props.selectedPath)
} else {
this.props.onAccountRestriction()

Loading…
Cancel
Save