File tree Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -1480,21 +1480,40 @@ describe('Cloud Code', () => {
1480
1480
} ) ;
1481
1481
1482
1482
it ( 'beforeSave should not sanitize database' , async done => {
1483
+ const { adapter } = Config . get ( Parse . applicationId ) . database ;
1484
+ spyOn ( adapter , 'findOneAndUpdate' ) . and . callThrough ( ) ;
1485
+
1483
1486
let count = 0 ;
1484
1487
Parse . Cloud . beforeSave ( 'CloudIncrementNested' , req => {
1485
1488
count += 1 ;
1489
+ req . object . set ( 'foo' , 'baz' ) ;
1486
1490
expect ( typeof req . object . get ( 'objectField' ) . number ) . toBe ( 'number' ) ;
1487
1491
} ) ;
1492
+
1488
1493
Parse . Cloud . afterSave ( 'CloudIncrementNested' , req => {
1489
1494
expect ( typeof req . object . get ( 'objectField' ) . number ) . toBe ( 'number' ) ;
1490
1495
} ) ;
1491
1496
1492
1497
const obj = new Parse . Object ( 'CloudIncrementNested' ) ;
1493
1498
obj . set ( 'objectField' , { number : 5 } ) ;
1499
+ obj . set ( 'foo' , 'bar' ) ;
1494
1500
await obj . save ( ) ;
1495
1501
1496
1502
obj . increment ( 'objectField.number' , 10 ) ;
1497
1503
await obj . save ( ) ;
1504
+
1505
+ const [
1506
+ ,
1507
+ ,
1508
+ ,
1509
+ /* className */ /* schema */ /* query */ update ,
1510
+ ] = adapter . findOneAndUpdate . calls . first ( ) . args ;
1511
+ expect ( update ) . toEqual ( {
1512
+ 'objectField.number' : { __op : 'Increment' , amount : 10 } ,
1513
+ foo : 'baz' ,
1514
+ updatedAt : obj . updatedAt . toISOString ( ) ,
1515
+ } ) ;
1516
+
1498
1517
count === 2 ? done ( ) : fail ( ) ;
1499
1518
} ) ;
1500
1519
You can’t perform that action at this time.
0 commit comments