Skip to content

Commit 3cce789

Browse files
committed
Added a test case demonstrating issue parse-community#1450
1 parent b2d720e commit 3cce789

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

src/__tests__/ParseObject-test.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -661,6 +661,33 @@ describe('ParseObject', () => {
661661
});
662662
});
663663

664+
it('can set multiple nested fields (regression test for #1450)', () => {
665+
const o = new ParseObject('Person');
666+
o._finishFetch({
667+
objectId: 'setNested2_1450',
668+
objectField: {
669+
number: 5,
670+
letter: 'a',
671+
},
672+
});
673+
674+
expect(o.attributes).toEqual({
675+
objectField: { number: 5, letter: 'a' },
676+
});
677+
o.set('objectField.number', 20);
678+
o.set('objectField.letter', 'b');
679+
680+
expect(o.attributes).toEqual({
681+
objectField: { number: 20, letter: 'b' },
682+
});
683+
expect(o.op('objectField.number') instanceof SetOp).toBe(true);
684+
expect(o.dirtyKeys()).toEqual(['objectField.number', 'objectField.letter', 'objectField']);
685+
expect(o._getSaveJSON()).toEqual({
686+
'objectField.number': 20,
687+
'objectField.letter': 'b',
688+
});
689+
});
690+
664691
it('can increment a nested field', () => {
665692
const o = new ParseObject('Person');
666693
o._finishFetch({

0 commit comments

Comments
 (0)