mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
Add test for better gas estimation
This commit is contained in:
parent
313b3c087a
commit
571f6723a6
@ -3,6 +3,8 @@ const sinon = require('sinon')
|
|||||||
const clone = require('clone')
|
const clone = require('clone')
|
||||||
const MetaMaskController = require('../../app/scripts/metamask-controller')
|
const MetaMaskController = require('../../app/scripts/metamask-controller')
|
||||||
const firstTimeState = require('../../app/scripts/first-time-state')
|
const firstTimeState = require('../../app/scripts/first-time-state')
|
||||||
|
const BN = require('ethereumjs-util').BN
|
||||||
|
const GWEI_BN = new BN('1000000000')
|
||||||
|
|
||||||
describe('MetaMaskController', function () {
|
describe('MetaMaskController', function () {
|
||||||
const noop = () => {}
|
const noop = () => {}
|
||||||
@ -45,6 +47,29 @@ describe('MetaMaskController', function () {
|
|||||||
metamaskController.keyringController.createNewVaultAndKeychain.restore()
|
metamaskController.keyringController.createNewVaultAndKeychain.restore()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe('#getGasPrice', function () {
|
||||||
|
it('gives the 50th percentile lowest accepted gas price from recentBlocksController', async function () {
|
||||||
|
const realRecentBlocksController = metamaskController.recentBlocksController
|
||||||
|
metamaskController.recentBlocksController = {
|
||||||
|
store: {
|
||||||
|
getState: () => {
|
||||||
|
return {
|
||||||
|
recentBlocks: [
|
||||||
|
{ transactions: [ new BN('50000000000'), new BN('100000000000') ] },
|
||||||
|
{ transactions: [ new BN('60000000000'), new BN('100000000000') ] },
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const gasPrice = metamaskController.getGasPrice()
|
||||||
|
assert.equal(gasPrice, 50, 'accurately estimates 50th percentile accepted gas price')
|
||||||
|
|
||||||
|
metamaskController.recentBlocksController = realRecentBlocksController
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
describe('#createNewVaultAndKeychain', function () {
|
describe('#createNewVaultAndKeychain', function () {
|
||||||
it('can only create new vault on keyringController once', async function () {
|
it('can only create new vault on keyringController once', async function () {
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user