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