import { merge } from './merge'; describe( 'merge', () => { test( 'can merge 2 objects.', () => { const object = { a: 1, b: '2' }; const source = { a: 2, c: true }; expect( merge( object, source ) ).toStrictEqual( { a: 2, b: '2', c: true } ); // Should not change the source expect( source ).toStrictEqual( { a: 2, c: true } ); } ); test( 'can merge 2 objects recursively.', () => { const object = { a: 1, b: { c: 2, d: 3 } }; const source = { b: { d: 4, e: 5 }, f: true }; expect( merge( object, source ) ).toStrictEqual( { a: 1, b: { c: 2, d: 4, e: 5 }, f: true, } ); } ); } );