Files
30-seconds-of-code/test/words/words.test.js
2018-06-18 20:41:57 +03:00

34 lines
1.2 KiB
JavaScript

const expect = require('expect');
const words = require('./words.js');
test('words is a Function', () => {
expect(words).toBeInstanceOf(Function);
});
test('words(\'I love javaScript!!\') returns [I, love, javaScript]', () => {
expect(words('I love javaScript!!')).toEqual(["I", "love", "javaScript"]);
});
test('words(\'python, javaScript & coffee\') returns [python, javaScript, coffee]', () => {
expect(words('python, javaScript & coffee')).toEqual(["python", "javaScript", "coffee"]);
});
test('words(I love javaScript!!) returns an array', () => {
expect(Array.isArray(words('I love javaScript!!'))).toBeTruthy();
});
test('words() throws an error', () => {
expect(() => { words(); }).toThrow();
});
test('words(null) throws an error', () => {
expect(() => { words(null); }).toThrow();
});
test('words(undefined) throws an error', () => {
expect(() => { words(undefined); }).toThrow();
});
test('words({}) throws an error', () => {
expect(() => { words({}); }).toThrow();
});
test('words([]) throws an error', () => {
expect(() => { words([]); }).toThrow();
});
test('words(1234) throws an error', () => {
expect(() => { words(1234); }).toThrow();
});