mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-01-29 06:27:49 +00:00
69 lines
1.8 KiB
JavaScript
69 lines
1.8 KiB
JavaScript
import lodashStable from 'lodash';
|
|
import { objToString, objectTag, _, xml } from './utils';
|
|
|
|
describe('isType checks', () => {
|
|
it('should return `false` for subclassed values', () => {
|
|
const funcs = [
|
|
'isArray',
|
|
'isBoolean',
|
|
'isDate',
|
|
'isFunction',
|
|
'isNumber',
|
|
'isRegExp',
|
|
'isString',
|
|
];
|
|
|
|
lodashStable.each(funcs, (methodName) => {
|
|
function Foo() {}
|
|
Foo.prototype = root[methodName.slice(2)].prototype;
|
|
|
|
const object = new Foo();
|
|
if (objToString.call(object) === objectTag) {
|
|
assert.strictEqual(
|
|
_[methodName](object),
|
|
false,
|
|
`\`_.${methodName}\` returns \`false\``,
|
|
);
|
|
}
|
|
});
|
|
});
|
|
|
|
it('should not error on host objects (test in IE)', () => {
|
|
const funcs = [
|
|
'isArguments',
|
|
'isArray',
|
|
'isArrayBuffer',
|
|
'isArrayLike',
|
|
'isBoolean',
|
|
'isBuffer',
|
|
'isDate',
|
|
'isElement',
|
|
'isError',
|
|
'isFinite',
|
|
'isFunction',
|
|
'isInteger',
|
|
'isMap',
|
|
'isNaN',
|
|
'isNil',
|
|
'isNull',
|
|
'isNumber',
|
|
'isObject',
|
|
'isObjectLike',
|
|
'isRegExp',
|
|
'isSet',
|
|
'isSafeInteger',
|
|
'isString',
|
|
'isUndefined',
|
|
'isWeakMap',
|
|
'isWeakSet',
|
|
];
|
|
|
|
lodashStable.each(funcs, (methodName) => {
|
|
if (xml) {
|
|
_[methodName](xml);
|
|
expect(true, `\`_.${methodName}\` should not error`);
|
|
}
|
|
});
|
|
});
|
|
});
|