const {words} = require('./_30s.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(); });