number.isfinite
Version:
An ES-spec-compliant Number.isFinite shim/polyfill/replacement that works as far down as ES3
25 lines (19 loc) • 823 B
JavaScript
import isFinite, * as isFiniteModule from 'number.isfinite';
import test from 'tape';
import runTests from './tests.js';
test('as a function', (t) => {
runTests(isFinite, t);
t.end();
});
test('named exports', async (t) => {
t.deepEqual(
Object.keys(isFiniteModule).sort(),
['default', 'shim', 'getPolyfill', 'implementation'].sort(),
'has expected named exports',
);
const { shim, getPolyfill, implementation } = isFiniteModule;
t.equal((await import('number.isfinite/shim')).default, shim, 'shim named export matches deep export');
t.equal((await import('number.isfinite/implementation')).default, implementation, 'implementation named export matches deep export');
t.equal((await import('number.isfinite/polyfill')).default, getPolyfill, 'getPolyfill named export matches deep export');
t.end();
});