Add more _.merge tests for arguments.

This commit is contained in:
John-David Dalton
2015-09-12 09:19:15 -07:00
parent dafe807888
commit ed2e6d16c8

View File

@@ -12176,18 +12176,26 @@
}); });
QUnit.test('should merge `arguments` objects', function(assert) { QUnit.test('should merge `arguments` objects', function(assert) {
assert.expect(3); assert.expect(7);
var object1 = { 'value': args }, var object1 = { 'value': args },
object2 = { 'value': { '3': 4 } }, object2 = { 'value': { '3': 4 } },
expected = { '0': 1, '1': 2, '2': 3, '3': 4 }, expected = { '0': 1, '1': 2, '2': 3, '3': 4 },
actual = _.merge(object1, object2); actual = _.merge(object1, object2);
assert.notOk('3' in args);
assert.notOk(_.isArguments(actual.value)); assert.notOk(_.isArguments(actual.value));
assert.deepEqual(actual.value, expected); assert.deepEqual(actual.value, expected);
delete object1.value[3]; object1.value = args;
actual = _.merge(object2, object1); actual = _.merge(object2, object1);
assert.notOk(_.isArguments(actual.value));
assert.deepEqual(actual.value, expected);
expected = { '0': 1, '1': 2, '2': 3 };
actual = _.merge({}, object1);
assert.notOk(_.isArguments(actual.value));
assert.deepEqual(actual.value, expected); assert.deepEqual(actual.value, expected);
}); });