1
0
mirror of https://github.com/dzeiocom/libs.git synced 2025-06-16 04:29:21 +00:00

Merge branch 'master' of github.com:dzeiocom/libs

Signed-off-by: Avior <florian.bouillon@delta-wings.net>
This commit is contained in:
2021-04-11 00:37:50 +02:00
20 changed files with 1107 additions and 892 deletions

View File

@ -1,6 +1,6 @@
/// <reference types="jest" />
import { objectSize, objectToArray, objectMap, objectSort, cloneObject, objectEqual, objectKeys, objectSet, objectLoop } from '../src/ObjectUtil'
import { objectSize, objectToArray, objectMap, objectSort, cloneObject, objectEqual, objectKeys, objectSet, objectLoop, objectClone } from '../src/ObjectUtil'
describe('Object Map tests', () => {
it('should works', () => {
@ -120,6 +120,34 @@ describe('Object Clone Tests', () => {
clone.toto = 'third'
expect(clone).not.toEqual(obj)
})
it('Should keep types', () => {
const obj = {
a: [],
b: '10',
c: 10,
d: {},
e: [10],
f: {g: 10}
}
const clone = objectClone(obj)
expect(clone).toEqual(obj)
})
it ('Should clone any types', () => {
const obj = {
a: [],
b: '10',
c: 10,
d: {},
e: [10],
f: {g: 10}
}
objectLoop(obj, (subObj) => {
const clone = objectClone(subObj)
expect(clone).toEqual(subObj)
})
})
})
describe('Object Set Tests', () => {
@ -185,4 +213,11 @@ describe('Object Equal Test', () => {
it('should not be differently equal', () => {
expect(objectEqual({pouet: true}, {})).toBe(false)
})
it('should handle every types', () => {
expect(objectEqual({
a: [10, {b: 'c'}], d: '1', e: 2, f: true, g: null, h: undefined
}, {
a: [10, {b: 'c'}], d: '1', e: 2, f: true, g: null, h: undefined
})).toBe(true)
})
})