import { isUrl } from './utils' describe('isUrl tests', () => { it('should return false for invalid and corner case inputs', () => { expect(isUrl([])).toBeFalsy() expect(isUrl({})).toBeFalsy() expect(isUrl(false)).toBeFalsy() expect(isUrl(true)).toBeFalsy() expect(isUrl(NaN)).toBeFalsy() expect(isUrl(null)).toBeFalsy() expect(isUrl(undefined)).toBeFalsy() expect(isUrl('')).toBeFalsy() }) it('should return false for invalid URLs', () => { expect(isUrl('foo')).toBeFalsy() expect(isUrl('bar')).toBeFalsy() expect(isUrl('bar/test')).toBeFalsy() expect(isUrl('http:/example.com/')).toBeFalsy() expect(isUrl('ttp://example.com/')).toBeFalsy() }) it('should return true for valid URLs', () => { expect(isUrl('http://example.com/')).toBeTruthy() expect(isUrl('https://example.com/')).toBeTruthy() expect(isUrl('http://example.com/test/123')).toBeTruthy() expect(isUrl('https://example.com/test/123')).toBeTruthy() expect(isUrl('http://example.com/test/123?foo=bar')).toBeTruthy() expect(isUrl('https://example.com/test/123?foo=bar')).toBeTruthy() expect(isUrl('http://www.example.com/')).toBeTruthy() expect(isUrl('https://www.example.com/')).toBeTruthy() expect(isUrl('http://www.example.com/test/123')).toBeTruthy() expect(isUrl('https://www.example.com/test/123')).toBeTruthy() expect(isUrl('http://www.example.com/test/123?foo=bar')).toBeTruthy() expect(isUrl('https://www.example.com/test/123?foo=bar')).toBeTruthy() }) })