1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-10-22 19:26:13 +02:00
metamask-extension/test/unit/app/util-test.js
Whymarrh Whitby 4f3fc95d50
Update ESLint rules for test suite (#8023)
* Use @metamask/eslint-config@1.1.0
* Use eslint-plugin-mocha@6.2.2
* Mark root ESLint config as root
* Update Mocha ESLint rules with shared ESLint config
2020-02-11 13:21:13 -03:30

92 lines
3.2 KiB
JavaScript

import assert from 'assert'
import { getEnvironmentType, sufficientBalance } from '../../../app/scripts/lib/util'
import {
ENVIRONMENT_TYPE_POPUP,
ENVIRONMENT_TYPE_NOTIFICATION,
ENVIRONMENT_TYPE_FULLSCREEN,
ENVIRONMENT_TYPE_BACKGROUND,
} from '../../../app/scripts/lib/enums'
describe('app utils', function () {
describe('getEnvironmentType', function () {
it('should return popup type', function () {
const environmentType = getEnvironmentType('http://extension-id/popup.html')
assert.equal(environmentType, ENVIRONMENT_TYPE_POPUP)
})
it('should return notification type', function () {
const environmentType = getEnvironmentType('http://extension-id/notification.html')
assert.equal(environmentType, ENVIRONMENT_TYPE_NOTIFICATION)
})
it('should return fullscreen type for home.html', function () {
const environmentType = getEnvironmentType('http://extension-id/home.html')
assert.equal(environmentType, ENVIRONMENT_TYPE_FULLSCREEN)
})
it('should return fullscreen type for phishing.html', function () {
const environmentType = getEnvironmentType('http://extension-id/phishing.html')
assert.equal(environmentType, ENVIRONMENT_TYPE_FULLSCREEN)
})
it('should return background type', function () {
const environmentType = getEnvironmentType('http://extension-id/_generated_background_page.html')
assert.equal(environmentType, ENVIRONMENT_TYPE_BACKGROUND)
})
it('should return the correct type for a URL with a hash fragment', function () {
const environmentType = getEnvironmentType('http://extension-id/popup.html#hash')
assert.equal(environmentType, ENVIRONMENT_TYPE_POPUP)
})
it('should return the correct type for a URL with query parameters', function () {
const environmentType = getEnvironmentType('http://extension-id/popup.html?param=foo')
assert.equal(environmentType, ENVIRONMENT_TYPE_POPUP)
})
it('should return the correct type for a URL with query parameters and a hash fragment', function () {
const environmentType = getEnvironmentType('http://extension-id/popup.html?param=foo#hash')
assert.equal(environmentType, ENVIRONMENT_TYPE_POPUP)
})
})
describe('SufficientBalance', function () {
it('returns true if max tx cost is equal to balance.', function () {
const tx = {
'value': '0x1',
'gas': '0x2',
'gasPrice': '0x3',
}
const balance = '0x8'
const result = sufficientBalance(tx, balance)
assert.ok(result, 'sufficient balance found.')
})
it('returns true if max tx cost is less than balance.', function () {
const tx = {
'value': '0x1',
'gas': '0x2',
'gasPrice': '0x3',
}
const balance = '0x9'
const result = sufficientBalance(tx, balance)
assert.ok(result, 'sufficient balance found.')
})
it('returns false if max tx cost is more than balance.', function () {
const tx = {
'value': '0x1',
'gas': '0x2',
'gasPrice': '0x3',
}
const balance = '0x6'
const result = sufficientBalance(tx, balance)
assert.ok(!result, 'insufficient balance found.')
})
})
})