File tree Expand file tree Collapse file tree 2 files changed +29
-1
lines changed Expand file tree Collapse file tree 2 files changed +29
-1
lines changed Original file line number Diff line number Diff line change @@ -1779,6 +1779,34 @@ describe('schemas', () => {
17791779 } ) ;
17801780 } ) ;
17811781
1782+ describe ( 'Nested documents' , ( ) => {
1783+ beforeAll ( async ( ) => {
1784+ const testSchema = new Parse . Schema ( 'test_7371' ) ;
1785+ testSchema . setCLP ( {
1786+ create : { [ '*' ] : true } ,
1787+ update : { [ '*' ] : true } ,
1788+ addField : { } ,
1789+ } ) ;
1790+ testSchema . addObject ( 'a' ) ;
1791+ await testSchema . save ( ) ;
1792+ } ) ;
1793+
1794+ it ( 'addField not required for adding a nested field (#7371)' , async ( ) => {
1795+ const obj = new Parse . Object ( 'test_7371' ) ;
1796+ obj . set ( 'a' , { } ) ;
1797+ await obj . save ( ) ;
1798+ obj . set ( 'a.b' , 2 ) ;
1799+ await obj . save ( ) ;
1800+ } ) ;
1801+ it ( 'addField not required for modifying a nested field (#7371)' , async ( ) => {
1802+ const obj = new Parse . Object ( 'test_7371' ) ;
1803+ obj . set ( 'a' , { b : 1 } ) ;
1804+ await obj . save ( ) ;
1805+ obj . set ( 'a.b' , 2 ) ;
1806+ await obj . save ( ) ;
1807+ } ) ;
1808+ } ) ;
1809+
17821810 it ( 'should aceept class-level permission with userid of any length' , async done => {
17831811 await global . reconfigureServer ( {
17841812 customIdSize : 11 ,
Original file line number Diff line number Diff line change @@ -894,7 +894,7 @@ class DatabaseController {
894894 if ( object [ field ] && object [ field ] . __op && object [ field ] . __op === 'Delete' ) {
895895 return false ;
896896 }
897- return schemaFields . indexOf ( field ) < 0 ;
897+ return schemaFields . indexOf ( getRootFieldName ( field ) ) < 0 ;
898898 } ) ;
899899 if ( newKeys . length > 0 ) {
900900 // adds a marker that new field is being adding during update
You can’t perform that action at this time.
0 commit comments