mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-01 13:47:06 +01:00
93 lines
2.5 KiB
JavaScript
93 lines
2.5 KiB
JavaScript
import { GAS_LIMITS } from '../../../shared/constants/gas';
|
|
import * as utils from './confirm-tx.util';
|
|
|
|
describe('Confirm Transaction utils', () => {
|
|
describe('getHexGasTotal', () => {
|
|
it('should multiply the hex gasLimit and hex gasPrice values together', () => {
|
|
expect(
|
|
utils.getHexGasTotal({
|
|
gasLimit: GAS_LIMITS.SIMPLE,
|
|
gasPrice: '0x3b9aca00',
|
|
}),
|
|
).toStrictEqual('0x1319718a5000');
|
|
});
|
|
|
|
it('should prefix the result with 0x', () => {
|
|
expect(
|
|
utils.getHexGasTotal({ gasLimit: '5208', gasPrice: '3b9aca00' }),
|
|
).toStrictEqual('0x1319718a5000');
|
|
});
|
|
});
|
|
|
|
describe('addEth', () => {
|
|
it('should add two values together rounding to 6 decimal places', () => {
|
|
expect(utils.addEth('0.12345678', '0')).toStrictEqual('0.123457');
|
|
});
|
|
|
|
it('should add any number of values together rounding to 6 decimal places', () => {
|
|
expect(
|
|
utils.addEth(
|
|
'0.1',
|
|
'0.02',
|
|
'0.003',
|
|
'0.0004',
|
|
'0.00005',
|
|
'0.000006',
|
|
'0.0000007',
|
|
),
|
|
).toStrictEqual('0.123457');
|
|
});
|
|
});
|
|
|
|
describe('addFiat', () => {
|
|
it('should add two values together rounding to 2 decimal places', () => {
|
|
expect(utils.addFiat('0.12345678', '0')).toStrictEqual('0.12');
|
|
});
|
|
|
|
it('should add any number of values together rounding to 2 decimal places', () => {
|
|
expect(
|
|
utils.addFiat(
|
|
'0.1',
|
|
'0.02',
|
|
'0.003',
|
|
'0.0004',
|
|
'0.00005',
|
|
'0.000006',
|
|
'0.0000007',
|
|
),
|
|
).toStrictEqual('0.12');
|
|
});
|
|
});
|
|
|
|
describe('getTransactionFee', () => {
|
|
it('should get the transaction fee in ETH', () => {
|
|
const ethTransactionFee = utils.getTransactionFee({
|
|
value: '0x1319718a5000',
|
|
toCurrency: 'ETH',
|
|
conversionRate: 468.58,
|
|
numberOfDecimals: 6,
|
|
});
|
|
|
|
expect(ethTransactionFee).toStrictEqual('0.000021');
|
|
});
|
|
|
|
it('should get the transaction fee in fiat', () => {
|
|
const fiatTransactionFee = utils.getTransactionFee({
|
|
value: '0x1319718a5000',
|
|
toCurrency: 'usd',
|
|
conversionRate: 468.58,
|
|
numberOfDecimals: 2,
|
|
});
|
|
|
|
expect(fiatTransactionFee).toStrictEqual('0.01');
|
|
});
|
|
});
|
|
|
|
describe('formatCurrency', () => {
|
|
it('should format USD values', () => {
|
|
const value = utils.formatCurrency('123.45', 'usd');
|
|
expect(value).toStrictEqual('$123.45');
|
|
});
|
|
});
|
|
});
|