@@ -841,6 +841,7 @@ describe('ParseObject', () => {
841
841
expect ( p . get ( 'age' ) ) . toBe ( 39 ) ;
842
842
done ( ) ;
843
843
} ) ;
844
+ jest . runAllTicks ( ) ;
844
845
expect ( p . _getPendingOps ( ) . length ) . toBe ( 2 ) ;
845
846
p . increment ( 'age' ) ;
846
847
expect ( p . get ( 'age' ) ) . toBe ( 39 ) ;
@@ -867,17 +868,20 @@ describe('ParseObject', () => {
867
868
expect ( xhrs . length ) . toBe ( 0 ) ;
868
869
p . increment ( 'updates' ) ;
869
870
p . save ( ) ;
871
+ jest . runAllTicks ( ) ;
870
872
expect ( p . _getPendingOps ( ) . length ) . toBe ( 2 ) ;
871
873
expect ( xhrs . length ) . toBe ( 1 ) ;
872
874
p . increment ( 'updates' ) ;
873
875
p . save ( ) ;
876
+ jest . runAllTicks ( ) ;
874
877
expect ( p . _getPendingOps ( ) . length ) . toBe ( 3 ) ;
875
878
expect ( xhrs . length ) . toBe ( 1 ) ;
876
879
877
880
xhrs [ 0 ] . status = 200 ;
878
881
xhrs [ 0 ] . responseText = JSON . stringify ( { objectId : 'P15' , updates : 1 } ) ;
879
882
xhrs [ 0 ] . readyState = 4 ;
880
883
xhrs [ 0 ] . onreadystatechange ( ) ;
884
+ jest . runAllTicks ( ) ;
881
885
882
886
expect ( p . _getServerData ( ) ) . toEqual ( { updates : 1 } ) ;
883
887
expect ( p . get ( 'updates' ) ) . toBe ( 2 ) ;
@@ -904,6 +908,7 @@ describe('ParseObject', () => {
904
908
905
909
done ( ) ;
906
910
} ) ;
911
+ jest . runAllTicks ( ) ;
907
912
908
913
xhr . status = 404 ;
909
914
xhr . responseText = JSON . stringify ( { code : 103 , error : 'Invalid class name' } ) ;
@@ -926,15 +931,18 @@ describe('ParseObject', () => {
926
931
expect ( p . _getPendingOps ( ) . length ) . toBe ( 1 ) ;
927
932
p . increment ( 'updates' ) ;
928
933
p . save ( ) ;
934
+ jest . runAllTicks ( ) ;
929
935
expect ( p . _getPendingOps ( ) . length ) . toBe ( 2 ) ;
930
936
p . set ( 'updates' , 12 ) ;
931
937
p . save ( ) ;
938
+ jest . runAllTicks ( ) ;
932
939
expect ( p . _getPendingOps ( ) . length ) . toBe ( 3 ) ;
933
940
934
941
xhrs [ 0 ] . status = 404 ;
935
942
xhrs [ 0 ] . responseText = JSON . stringify ( { code : 103 , error : 'Invalid class name' } ) ;
936
943
xhrs [ 0 ] . readyState = 4 ;
937
944
xhrs [ 0 ] . onreadystatechange ( ) ;
945
+ jest . runAllTicks ( ) ;
938
946
939
947
expect ( p . _getPendingOps ( ) . length ) . toBe ( 2 ) ;
940
948
expect ( p . _getPendingOps ( ) [ 0 ] ) . toEqual ( {
@@ -965,17 +973,20 @@ describe('ParseObject', () => {
965
973
expect ( parent . id ) . toBe ( 'parent' ) ;
966
974
done ( ) ;
967
975
} ) ;
976
+ jest . runAllTicks ( ) ;
968
977
969
978
expect ( xhrs . length ) . toBe ( 1 ) ;
970
979
expect ( xhrs [ 0 ] . open . mock . calls [ 0 ] ) . toEqual (
971
980
[ 'POST' , 'https://api.parse.com/1/batch' , true ]
972
981
) ;
973
982
xhrs [ 0 ] . responseText = JSON . stringify ( [ { success : { objectId : 'child' } } ] ) ;
974
983
xhrs [ 0 ] . onreadystatechange ( ) ;
984
+ jest . runAllTicks ( ) ;
975
985
976
986
expect ( xhrs . length ) . toBe ( 2 ) ;
977
987
xhrs [ 1 ] . responseText = JSON . stringify ( { objectId : 'parent' } ) ;
978
988
xhrs [ 1 ] . onreadystatechange ( ) ;
989
+ jest . runAllTicks ( ) ;
979
990
} ) ) ;
980
991
981
992
it ( 'will fail for a circular dependency of non-existing objects' , ( ) => {
@@ -1052,6 +1063,7 @@ describe('ParseObject', () => {
1052
1063
expect ( parent . id ) . toBe ( 'parent' ) ;
1053
1064
done ( ) ;
1054
1065
} ) ;
1066
+ jest . runAllTicks ( ) ;
1055
1067
1056
1068
expect ( xhrs . length ) . toBe ( 1 ) ;
1057
1069
expect ( xhrs [ 0 ] . open . mock . calls [ 0 ] ) . toEqual (
@@ -1072,12 +1084,14 @@ describe('ParseObject', () => {
1072
1084
) ;
1073
1085
xhrs [ 0 ] . responseText = JSON . stringify ( [ { success : { objectId : 'parent' } } ] ) ;
1074
1086
xhrs [ 0 ] . onreadystatechange ( ) ;
1087
+ jest . runAllTicks ( ) ;
1075
1088
1076
1089
expect ( parent . id ) . toBe ( 'parent' ) ;
1077
1090
1078
1091
expect ( xhrs . length ) . toBe ( 2 ) ;
1079
1092
xhrs [ 1 ] . responseText = JSON . stringify ( [ { success : { } } ] ) ;
1080
1093
xhrs [ 1 ] . onreadystatechange ( ) ;
1094
+ jest . runAllTicks ( ) ;
1081
1095
} ) ) ;
1082
1096
1083
1097
it ( 'can save a chain of unsaved objects' , asyncHelper ( ( done ) => {
@@ -1107,6 +1121,7 @@ describe('ParseObject', () => {
1107
1121
expect ( grandchild . id ) . toBe ( 'grandchild' ) ;
1108
1122
done ( ) ;
1109
1123
} ) ;
1124
+ jest . runAllTicks ( ) ;
1110
1125
1111
1126
expect ( xhrs . length ) . toBe ( 1 ) ;
1112
1127
expect ( xhrs [ 0 ] . open . mock . calls [ 0 ] ) . toEqual (
@@ -1121,6 +1136,7 @@ describe('ParseObject', () => {
1121
1136
) ;
1122
1137
xhrs [ 0 ] . responseText = JSON . stringify ( [ { success : { objectId : 'grandchild' } } ] ) ;
1123
1138
xhrs [ 0 ] . onreadystatechange ( ) ;
1139
+ jest . runAllTicks ( ) ;
1124
1140
1125
1141
expect ( xhrs . length ) . toBe ( 2 ) ;
1126
1142
expect ( xhrs [ 1 ] . open . mock . calls [ 0 ] ) . toEqual (
@@ -1141,6 +1157,7 @@ describe('ParseObject', () => {
1141
1157
) ;
1142
1158
xhrs [ 1 ] . responseText = JSON . stringify ( [ { success : { objectId : 'child' } } ] ) ;
1143
1159
xhrs [ 1 ] . onreadystatechange ( ) ;
1160
+ jest . runAllTicks ( ) ;
1144
1161
1145
1162
expect ( xhrs . length ) . toBe ( 3 ) ;
1146
1163
expect ( xhrs [ 2 ] . open . mock . calls [ 0 ] ) . toEqual (
@@ -1161,6 +1178,7 @@ describe('ParseObject', () => {
1161
1178
) ;
1162
1179
xhrs [ 2 ] . responseText = JSON . stringify ( [ { success : { objectId : 'parent' } } ] ) ;
1163
1180
xhrs [ 2 ] . onreadystatechange ( ) ;
1181
+ jest . runAllTicks ( ) ;
1164
1182
} ) ) ;
1165
1183
1166
1184
it ( 'can update fields via a fetch() call' , asyncHelper ( ( done ) => {
@@ -1206,11 +1224,13 @@ describe('ParseObject', () => {
1206
1224
expect ( JSON . parse ( xhr . send . mock . calls [ 0 ] ) . _method ) . toBe ( 'DELETE' ) ;
1207
1225
done ( ) ;
1208
1226
} ) ;
1227
+ jest . runAllTicks ( ) ;
1209
1228
1210
1229
xhr . status = 200 ;
1211
1230
xhr . responseText = JSON . stringify ( { } ) ;
1212
1231
xhr . readyState = 4 ;
1213
1232
xhr . onreadystatechange ( ) ;
1233
+ jest . runAllTicks ( ) ;
1214
1234
} ) ) ;
1215
1235
1216
1236
it ( 'can save an array of objects' , asyncHelper ( ( done ) => {
@@ -1235,6 +1255,7 @@ describe('ParseObject', () => {
1235
1255
} ) ;
1236
1256
done ( ) ;
1237
1257
} ) ;
1258
+ jest . runAllTicks ( ) ;
1238
1259
1239
1260
xhr . status = 200 ;
1240
1261
xhr . responseText = JSON . stringify ( [
@@ -1246,6 +1267,7 @@ describe('ParseObject', () => {
1246
1267
] ) ;
1247
1268
xhr . readyState = 4 ;
1248
1269
xhr . onreadystatechange ( ) ;
1270
+ jest . runAllTicks ( ) ;
1249
1271
} ) ) ;
1250
1272
1251
1273
it ( 'returns the first error when saving an array of objects' , asyncHelper ( ( done ) => {
@@ -1274,6 +1296,7 @@ describe('ParseObject', () => {
1274
1296
expect ( error . message ) . toBe ( 'first error' ) ;
1275
1297
done ( ) ;
1276
1298
} ) ;
1299
+ jest . runAllTicks ( ) ;
1277
1300
1278
1301
xhrs [ 0 ] . responseText = JSON . stringify ( [
1279
1302
{ success : { objectId : 'pid0' } } ,
@@ -1298,15 +1321,8 @@ describe('ParseObject', () => {
1298
1321
{ success : { objectId : 'pid19' } } ,
1299
1322
] ) ;
1300
1323
xhrs [ 0 ] . onreadystatechange ( ) ;
1324
+ jest . runAllTicks ( ) ;
1301
1325
} ) ) ;
1302
-
1303
- it ( 'can fetch an array of objects' , ( ) => {
1304
-
1305
- } ) ;
1306
-
1307
- it ( 'can destroy an array of objects' , ( ) => {
1308
-
1309
- } ) ;
1310
1326
} ) ;
1311
1327
1312
1328
describe ( 'ObjectController' , ( ) => {
@@ -1328,11 +1344,13 @@ describe('ObjectController', () => {
1328
1344
expect ( body . _method ) . toBe ( 'GET' ) ;
1329
1345
done ( ) ;
1330
1346
} ) ;
1347
+ jest . runAllTicks ( ) ;
1331
1348
1332
1349
xhr . status = 200 ;
1333
1350
xhr . responseText = JSON . stringify ( { } ) ;
1334
1351
xhr . readyState = 4 ;
1335
1352
xhr . onreadystatechange ( ) ;
1353
+ jest . runAllTicks ( ) ;
1336
1354
} ) ) ;
1337
1355
1338
1356
it ( 'can fetch an array of objects' , asyncHelper ( ( done ) => {
@@ -1371,7 +1389,9 @@ describe('ObjectController', () => {
1371
1389
var destroy = objectController . destroy ( p2 , {
1372
1390
useMasterKey : true
1373
1391
} ) ;
1392
+ jest . runAllTicks ( ) ;
1374
1393
xhr . onreadystatechange ( ) ;
1394
+ jest . runAllTicks ( ) ;
1375
1395
return destroy ;
1376
1396
} ) . then ( ( ) => {
1377
1397
expect ( xhr . open . mock . calls [ 1 ] ) . toEqual (
@@ -1382,11 +1402,13 @@ describe('ObjectController', () => {
1382
1402
expect ( body . _MasterKey ) . toBe ( 'C' ) ;
1383
1403
done ( ) ;
1384
1404
} ) ;
1405
+ jest . runAllTicks ( ) ;
1385
1406
1386
1407
xhr . status = 200 ;
1387
1408
xhr . responseText = JSON . stringify ( { } ) ;
1388
1409
xhr . readyState = 4 ;
1389
1410
xhr . onreadystatechange ( ) ;
1411
+ jest . runAllTicks ( ) ;
1390
1412
} ) ) ;
1391
1413
1392
1414
it ( 'can destroy an array of objects' , asyncHelper ( ( done ) => {
@@ -1443,17 +1465,22 @@ describe('ObjectController', () => {
1443
1465
objects [ i ] . id = 'pid' + i ;
1444
1466
}
1445
1467
var destroy = objectController . destroy ( objects , { } ) ;
1468
+ jest . runAllTicks ( ) ;
1446
1469
xhrs [ 1 ] . onreadystatechange ( ) ;
1470
+ jest . runAllTicks ( ) ;
1447
1471
expect ( xhrs [ 1 ] . open . mock . calls . length ) . toBe ( 1 ) ;
1448
1472
xhrs [ 2 ] . onreadystatechange ( ) ;
1473
+ jest . runAllTicks ( ) ;
1449
1474
return destroy ;
1450
1475
} ) . then ( ( ) => {
1451
1476
expect ( JSON . parse ( xhrs [ 1 ] . send . mock . calls [ 0 ] ) . requests . length ) . toBe ( 20 ) ;
1452
1477
expect ( JSON . parse ( xhrs [ 2 ] . send . mock . calls [ 0 ] ) . requests . length ) . toBe ( 2 ) ;
1453
1478
done ( ) ;
1454
1479
} ) ;
1480
+ jest . runAllTicks ( ) ;
1455
1481
1456
1482
xhrs [ 0 ] . onreadystatechange ( ) ;
1483
+ jest . runAllTicks ( ) ;
1457
1484
} ) ) ;
1458
1485
1459
1486
it ( 'can save an object' , asyncHelper ( ( done ) => {
@@ -1475,11 +1502,13 @@ describe('ObjectController', () => {
1475
1502
expect ( body . key ) . toBe ( 'value' ) ;
1476
1503
done ( ) ;
1477
1504
} ) ;
1505
+ jest . runAllTicks ( ) ;
1478
1506
1479
1507
xhr . status = 200 ;
1480
1508
xhr . responseText = JSON . stringify ( { } ) ;
1481
1509
xhr . readyState = 4 ;
1482
1510
xhr . onreadystatechange ( ) ;
1511
+ jest . runAllTicks ( ) ;
1483
1512
} ) ) ;
1484
1513
1485
1514
it ( 'can save an array of files' , asyncHelper ( ( done ) => {
@@ -1513,6 +1542,7 @@ describe('ObjectController', () => {
1513
1542
) ;
1514
1543
done ( ) ;
1515
1544
} ) ;
1545
+ jest . runAllTicks ( ) ;
1516
1546
1517
1547
var names = [ 'parse.txt' , 'parse2.txt' , 'parse3.txt' ] ;
1518
1548
for ( var i = 0 ; i < 3 ; i ++ ) {
@@ -1521,6 +1551,7 @@ describe('ObjectController', () => {
1521
1551
url : 'http://files.parsetfss.com/a/' + names [ i ]
1522
1552
} ) ;
1523
1553
xhrs [ i ] . onreadystatechange ( ) ;
1554
+ jest . runAllTicks ( ) ;
1524
1555
}
1525
1556
} ) ) ;
1526
1557
@@ -1557,6 +1588,7 @@ describe('ObjectController', () => {
1557
1588
} ) ;
1558
1589
}
1559
1590
var save = objectController . save ( objects , { } ) ;
1591
+ jest . runAllTicks ( ) ;
1560
1592
xhrs [ 1 ] . responseText = JSON . stringify ( response . slice ( 0 , 20 ) ) ;
1561
1593
xhrs [ 2 ] . responseText = JSON . stringify ( response . slice ( 20 ) ) ;
1562
1594
@@ -1568,12 +1600,14 @@ describe('ObjectController', () => {
1568
1600
objects [ 20 ] . set ( 'index' , 0 ) ;
1569
1601
1570
1602
xhrs [ 1 ] . onreadystatechange ( ) ;
1603
+ jest . runAllTicks ( ) ;
1571
1604
expect ( objects [ 0 ] . dirty ( ) ) . toBe ( false ) ;
1572
1605
expect ( objects [ 0 ] . id ) . toBe ( 'pid0' ) ;
1573
1606
expect ( objects [ 20 ] . dirty ( ) ) . toBe ( true ) ;
1574
1607
expect ( objects [ 20 ] . id ) . toBe ( undefined ) ;
1575
1608
1576
1609
xhrs [ 2 ] . onreadystatechange ( ) ;
1610
+ jest . runAllTicks ( ) ;
1577
1611
expect ( objects [ 20 ] . dirty ( ) ) . toBe ( false ) ;
1578
1612
expect ( objects [ 20 ] . get ( 'index' ) ) . toBe ( 0 ) ;
1579
1613
expect ( objects [ 20 ] . id ) . toBe ( 'pid20' ) ;
@@ -1582,6 +1616,7 @@ describe('ObjectController', () => {
1582
1616
expect ( results . length ) . toBe ( 22 ) ;
1583
1617
done ( ) ;
1584
1618
} ) ;
1619
+ jest . runAllTicks ( ) ;
1585
1620
1586
1621
xhrs [ 0 ] . responseText = JSON . stringify ( [
1587
1622
{ success : { objectId : 'pid0' , index : 0 } } ,
@@ -1591,6 +1626,7 @@ describe('ObjectController', () => {
1591
1626
{ success : { objectId : 'pid4' , index : 4 } } ,
1592
1627
] ) ;
1593
1628
xhrs [ 0 ] . onreadystatechange ( ) ;
1629
+ jest . runAllTicks ( ) ;
1594
1630
} ) ) ;
1595
1631
1596
1632
it ( 'does not fail when checking if arrays of pointers are dirty' , ( ) => {
@@ -1619,6 +1655,7 @@ describe('ObjectController', () => {
1619
1655
items . push ( new ParseObject ( 'Item' ) ) ;
1620
1656
brand . set ( 'items' , items ) ;
1621
1657
expect ( function ( ) { brand . save ( ) ; } ) . not . toThrow ( ) ;
1658
+ jest . runAllTicks ( ) ;
1622
1659
1623
1660
xhrs [ 0 ] . onreadystatechange ( ) ;
1624
1661
} ) ;
0 commit comments