Additional tests

This commit is contained in:
Angelos Chalaris
2018-10-31 20:41:38 +02:00
parent 53151c01e5
commit abd66ccc0a
5 changed files with 21 additions and 1 deletions

View File

@ -19,3 +19,8 @@ test('Calculates the factorial of 4', () => {
test('Calculates the factorial of 10', () => {
expect(factorial(10)).toBe(3628800);
});
test('Throws TypeError if n < 0', () => {
expect(() => {
factorial(-1);
}).toThrow(TypeError);
});

View File

@ -7,6 +7,9 @@ test('formatDuration is a Function', () => {
test('Returns the human readable format of the given number of milliseconds', () => {
expect(formatDuration(1001)).toBe('1 second, 1 millisecond');
});
test('Returns the human readable format of the given number of milliseconds (negative)', () => {
expect(formatDuration(-1001)).toBe('1 second, 1 millisecond');
});
test('Returns the human readable format of the given number of milliseconds', () => {
expect(formatDuration(34325055574)).toBe(
'397 days, 6 hours, 44 minutes, 15 seconds, 574 milliseconds'

View File

@ -13,5 +13,5 @@ test('Converts a string from camelcase', () => {
);
});
test('Converts a string from camelcase', () => {
expect(fromCamelCase('someJavascriptProperty', '_')).toBe('some_javascript_property');
expect(fromCamelCase('someJavascriptProperty')).toBe('some_javascript_property');
});

View File

@ -7,3 +7,9 @@ test('getType is a Function', () => {
test('Returns the native type of a value', () => {
expect(getType(new Set([1, 2, 3]))).toBe('set');
});
test('Returns null for null', () => {
expect(getType(null)).toBe('null');
});
test('Returns undefined for undefined', () => {
expect(getType(undefined)).toBe('undefined');
});

View File

@ -4,3 +4,9 @@ const {removeVowels} = require('./_30s.js');
test('removeVowels is a Function', () => {
expect(removeVowels).toBeInstanceOf(Function);
});
test('Removes vowels.', () => {
expect(removeVowels('foobAr')).toBe('fbr');
});
test('Replaces vowels.', () => {
expect(removeVowels('foobAr', '*')).toBe('f**b*r');
});