|
|
@@ -0,0 +1,64 @@
|
|
|
+import { fixedZero, isUrl } from './utils';
|
|
|
+
|
|
|
+describe('fixedZero tests', () => {
|
|
|
+ it('should not pad large numbers', () => {
|
|
|
+ expect(fixedZero(10)).toEqual(10);
|
|
|
+ expect(fixedZero(11)).toEqual(11);
|
|
|
+ expect(fixedZero(15)).toEqual(15);
|
|
|
+ expect(fixedZero(20)).toEqual(20);
|
|
|
+ expect(fixedZero(100)).toEqual(100);
|
|
|
+ expect(fixedZero(1000)).toEqual(1000);
|
|
|
+ });
|
|
|
+
|
|
|
+ it('should pad single digit numbers and return them as string', () => {
|
|
|
+ expect(fixedZero(0)).toEqual('00');
|
|
|
+ expect(fixedZero(1)).toEqual('01');
|
|
|
+ expect(fixedZero(2)).toEqual('02');
|
|
|
+ expect(fixedZero(3)).toEqual('03');
|
|
|
+ expect(fixedZero(4)).toEqual('04');
|
|
|
+ expect(fixedZero(5)).toEqual('05');
|
|
|
+ expect(fixedZero(6)).toEqual('06');
|
|
|
+ expect(fixedZero(7)).toEqual('07');
|
|
|
+ expect(fixedZero(8)).toEqual('08');
|
|
|
+ expect(fixedZero(9)).toEqual('09');
|
|
|
+ });
|
|
|
+
|
|
|
+});
|
|
|
+
|
|
|
+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();
|
|
|
+ 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();
|
|
|
+ });
|
|
|
+
|
|
|
+});
|