Skip to content

Commit ffe04c3

Browse files
committed
added test for issue #33
1 parent adb9c49 commit ffe04c3

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
node_modules
2+
package-lock.json

test/index.spec.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,4 +235,23 @@ describe('deep-extend', function () {
235235
});
236236
});
237237

238+
describe('issue #33', function () {
239+
240+
it('correct usage (cloning)', function () {
241+
var sharedObject = {foo: 'zero'};
242+
var objDef = {bar: sharedObject, baz: sharedObject};
243+
var obj = {bar: {foo: 'one'}, baz: {foo: 'two'}};
244+
obj = extend({}, {bar: objDef.bar, baz: objDef.baz}, obj);
245+
obj.should.eql({bar: {foo: 'one'}, baz: {foo: 'two'}});
246+
});
247+
248+
it('incorrect usage (just extending)', function () {
249+
var sharedObject = {foo: 'serif'};
250+
var objDef = {bar: sharedObject, baz: sharedObject};
251+
var obj = {bar: {foo: 'one'}, baz: {foo: 'two'}};
252+
obj = extend({bar: objDef.bar, baz: objDef.baz}, obj);
253+
obj.should.eql({bar: {foo: 'two'}, baz: {foo: 'two'}});
254+
});
255+
});
256+
238257
});

0 commit comments

Comments
 (0)