Improve tests and check if string is empty

This commit is contained in:
Itai Steinherz 2018-10-28 09:04:14 +02:00
parent 522c7482f2
commit 605b4f4470
No known key found for this signature in database
GPG key ID: BE977733D203B00A
2 changed files with 14 additions and 6 deletions

View file

@ -136,8 +136,8 @@ namespace is { // tslint:disable-line:no-namespace
// tslint:enable:variable-name
export const nullOrUndefined = (value: any): value is null | undefined => null_(value) || undefined(value);
export const numericString = (value: string): boolean =>
!Number.isNaN(Number(value));
export const numericString = (value: any): boolean =>
string(value) && value.length > 0 && !Number.isNaN(Number(value));
export const array = Array.isArray;
export const buffer = isBuffer;

View file

@ -76,6 +76,14 @@ const types = new Map<string, Test>([
Symbol('🦄')
]
}],
['numericString', {
is: m.numericString,
fixtures: [
'5',
'-3.2',
'Infinity'
]
}],
['array', {
is: m.array,
fixtures: [
@ -411,7 +419,7 @@ test('is.null', t => {
});
test('is.string', t => {
testType(t, 'string', ['emptyString']);
testType(t, 'string', ['emptyString', 'numericString']);
});
test('is.number', t => {
@ -427,9 +435,9 @@ test('is.symbol', t => {
});
test('is.numericString', t => {
t.true(m.numericString('5'));
t.true(m.numericString('-3.2'));
t.true(m.numericString('Infinity'));
testType(t, 'numericString');
t.false(m.numericString(''));
t.false(m.numericString(1));
});
test('is.array', t => {