diff options
author | Sebastian <sebasjm@gmail.com> | 2021-08-23 16:46:06 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2021-08-23 16:48:30 -0300 |
commit | 38acabfa6089ab8ac469c12b5f55022fb96935e5 (patch) | |
tree | 453dbf70000cc5e338b06201af1eaca8343f8f73 /value-equal/modules/__tests__ | |
parent | f26125e039143b92dc0d84e7775f508ab0cdcaa8 (diff) | |
download | node-vendor-master.tar.gz node-vendor-master.tar.bz2 node-vendor-master.zip |
Diffstat (limited to 'value-equal/modules/__tests__')
-rw-r--r-- | value-equal/modules/__tests__/.eslintrc | 5 | ||||
-rw-r--r-- | value-equal/modules/__tests__/array-test.js | 15 | ||||
-rw-r--r-- | value-equal/modules/__tests__/boolean-test.js | 29 | ||||
-rw-r--r-- | value-equal/modules/__tests__/date-test.js | 17 | ||||
-rw-r--r-- | value-equal/modules/__tests__/number-test.js | 29 | ||||
-rw-r--r-- | value-equal/modules/__tests__/object-test.js | 31 | ||||
-rw-r--r-- | value-equal/modules/__tests__/string-test.js | 31 | ||||
-rw-r--r-- | value-equal/modules/__tests__/undefined-and-null-test.js | 28 |
8 files changed, 185 insertions, 0 deletions
diff --git a/value-equal/modules/__tests__/.eslintrc b/value-equal/modules/__tests__/.eslintrc new file mode 100644 index 0000000..55f121d --- /dev/null +++ b/value-equal/modules/__tests__/.eslintrc @@ -0,0 +1,5 @@ +{ + "env": { + "jest": true + } +} diff --git a/value-equal/modules/__tests__/array-test.js b/value-equal/modules/__tests__/array-test.js new file mode 100644 index 0000000..13950b7 --- /dev/null +++ b/value-equal/modules/__tests__/array-test.js @@ -0,0 +1,15 @@ +import valueEqual from 'value-equal'; + +describe('arrays', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual([1, 2, 3], [1, 2, 3])).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual([1, 2, 3], [2, 3, 4])).toBe(false); + }); + }); +}); diff --git a/value-equal/modules/__tests__/boolean-test.js b/value-equal/modules/__tests__/boolean-test.js new file mode 100644 index 0000000..0fd1b84 --- /dev/null +++ b/value-equal/modules/__tests__/boolean-test.js @@ -0,0 +1,29 @@ +import valueEqual from 'value-equal'; + +describe('boolean primitives', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual(true, true)).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual(true, false)).toBe(false); + }); + }); +}); + +describe('boolean objects', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual(new Boolean(true), new Boolean(true))).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual(new Boolean(true), new Boolean(false))).toBe(false); + }); + }); +}); diff --git a/value-equal/modules/__tests__/date-test.js b/value-equal/modules/__tests__/date-test.js new file mode 100644 index 0000000..c239bfe --- /dev/null +++ b/value-equal/modules/__tests__/date-test.js @@ -0,0 +1,17 @@ +import valueEqual from 'value-equal'; + +describe('date objects', () => { + const now = Date.now(); + + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual(new Date(now), new Date(now))).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual(new Date(now), new Date(now + 1))).toBe(false); + }); + }); +}); diff --git a/value-equal/modules/__tests__/number-test.js b/value-equal/modules/__tests__/number-test.js new file mode 100644 index 0000000..67ec647 --- /dev/null +++ b/value-equal/modules/__tests__/number-test.js @@ -0,0 +1,29 @@ +import valueEqual from 'value-equal'; + +describe('number primitives', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual(123.456, 123.456)).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual(123.456, 123.567)).toBe(false); + }); + }); +}); + +describe('number objects', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual(new Number(123.456), new Number(123.456))).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual(new Number(123.456), new Number(123.567))).toBe(false); + }); + }); +}); diff --git a/value-equal/modules/__tests__/object-test.js b/value-equal/modules/__tests__/object-test.js new file mode 100644 index 0000000..aa81831 --- /dev/null +++ b/value-equal/modules/__tests__/object-test.js @@ -0,0 +1,31 @@ +import valueEqual from 'value-equal'; + +describe('empty objects', () => { + it('returns true', () => { + expect(valueEqual({}, Object.create(null))).toBe(true); + }); +}); + +describe('objects with undefined values', () => { + it('returns false', () => { + expect(valueEqual({ a: undefined }, { b: 1 })).toBe(false); // #5 + }); +}); + +describe('objects with different constructors but the same properties', () => { + function A(a, b, c) { + this.a = a; + this.b = b; + this.c = c; + } + + function B(a, b, c) { + this.a = a; + this.b = b; + this.c = c; + } + + it('returns true', () => { + expect(valueEqual(new A(1, 2, 3), new B(1, 2, 3))).toBe(true); + }); +}); diff --git a/value-equal/modules/__tests__/string-test.js b/value-equal/modules/__tests__/string-test.js new file mode 100644 index 0000000..e643e44 --- /dev/null +++ b/value-equal/modules/__tests__/string-test.js @@ -0,0 +1,31 @@ +import valueEqual from 'value-equal'; + +describe('string primitives', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual('asdf', 'asdf')).toBe(true); + expect(valueEqual('asdf', new String('asdf'))).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual('asdf', 'sdfg')).toBe(false); + expect(valueEqual('asdf', new String('sdfg'))).toBe(false); + }); + }); +}); + +describe('string objects', () => { + describe('that are equal', () => { + it('returns true', () => { + expect(valueEqual(new String('asdf'), new String('asdf'))).toBe(true); + }); + }); + + describe('that are not equal', () => { + it('returns false', () => { + expect(valueEqual(new String('asdf'), new String('sdfg'))).toBe(false); + }); + }); +}); diff --git a/value-equal/modules/__tests__/undefined-and-null-test.js b/value-equal/modules/__tests__/undefined-and-null-test.js new file mode 100644 index 0000000..8efc7c1 --- /dev/null +++ b/value-equal/modules/__tests__/undefined-and-null-test.js @@ -0,0 +1,28 @@ +import valueEqual from 'value-equal'; + +describe('undefined and null', () => { + describe('when both are undefined', () => { + it('returns true', () => { + expect(valueEqual(undefined, undefined)).toBe(true); + }); + }); + + describe('when both are null', () => { + it('returns true', () => { + expect(valueEqual(null, null)).toBe(true); + }); + }); + + describe('when one is null', () => { + it('returns false', () => { + expect(valueEqual(undefined, null)).toBe(false); + }); + }); + + describe('when one is null and the other is an object', () => { + it('returns false', () => { + expect(valueEqual({}, null)).toBe(false); + expect(valueEqual(null, {})).toBe(false); + }); + }); +}); |