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(); });