PHP WebShell
Текущая директория: /opt/BitGoJS/modules/utxo-lib/test/bitgo
Просмотр файла: tnumber.ts
import * as assert from 'assert';
import { toTNumber } from '../../src/bitgo';
const values = [
0,
1,
1.01 * 1e8,
Number.MAX_SAFE_INTEGER,
'10999999800000001',
'9223372036854775807',
'91000036854775807',
// TODO: Add some bigint inputs
];
describe('toTNumber', function () {
values.forEach((value) => {
if (typeof value === 'number') {
it(`number ${value}`, function () {
assert.strictEqual(toTNumber(value, 'number'), value);
assert.strictEqual(toTNumber<number>(value, 'number'), value);
});
}
it(`bigint ${value}`, function () {
assert.strictEqual(toTNumber(value, 'bigint'), BigInt(value));
assert.strictEqual(toTNumber<bigint>(value, 'bigint'), BigInt(value));
});
});
it('throws on undefined value', function () {
assert.throws(() => {
const a: string = undefined as unknown as string;
toTNumber(a, 'number');
});
});
it('throws on unsafe number', function () {
assert.throws(() => {
toTNumber('10999999800000001', 'number');
});
});
it('throws on invalid amountType', function () {
assert.throws(() => {
toTNumber(BigInt(123), 'invalid' as 'number' | 'bigint');
});
});
});
Выполнить команду
Для локальной разработки. Не используйте в интернете!