1 /* eslint-disable no-unused-vars */
2 import Benchmark from 'benny'
3 import deepMerge from 'deepmerge'
4 import merge from 'just-merge'
7 import { generateRandomObject } from './benchmark-utils.mjs'
9 const object = generateRandomObject()
10 const objectToMerge = generateRandomObject()
13 `Deep merge two objects: object with ${
14 Object.keys(object).length
15 } keys, object with ${Object.keys(objectToMerge).length} keys`,
16 Benchmark.add('lodash merge', (obj = object) => {
17 const objMerged = _.merge(obj, objectToMerge)
19 Benchmark.add('just-merge', (obj = object) => {
20 const objMerged = merge(obj, objectToMerge)
22 Benchmark.add('deepmerge', (obj = object) => {
23 const objMerged = deepMerge(obj, objectToMerge)
28 file: 'deep-merge-object',
33 file: 'deep-merge-object',
38 file: 'deep-merge-object',
42 ).catch(console.error)