@@ -49,21 +49,19 @@ describe('scheduler', () => {
49
49
const job1 = ( ) => {
50
50
calls . push ( 'job1' )
51
51
52
- queueJob ( job2 )
53
- queueJob ( job3 )
52
+ queueJob ( job2 , 10 )
53
+ queueJob ( job3 , 1 )
54
54
}
55
55
56
56
const job2 = ( ) => {
57
57
calls . push ( 'job2' )
58
58
queueJob ( job4 )
59
59
queueJob ( job5 )
60
60
}
61
- job2 . id = 10
62
61
63
62
const job3 = ( ) => {
64
63
calls . push ( 'job3' )
65
64
}
66
- job3 . id = 1
67
65
68
66
const job4 = ( ) => {
69
67
calls . push ( 'job4' )
@@ -126,7 +124,7 @@ describe('scheduler', () => {
126
124
queueJob ( job1 )
127
125
}
128
126
129
- queueJob ( cb1 , true )
127
+ queueJob ( cb1 , undefined , true )
130
128
await nextTick ( )
131
129
expect ( calls ) . toEqual ( [ 'cb1' , 'job1' ] )
132
130
} )
@@ -136,27 +134,23 @@ describe('scheduler', () => {
136
134
const job1 = ( ) => {
137
135
calls . push ( 'job1' )
138
136
}
139
- job1 . id = 1
140
137
141
138
const cb1 : SchedulerJob = ( ) => {
142
139
calls . push ( 'cb1' )
143
- queueJob ( job1 )
140
+ queueJob ( job1 , 1 )
144
141
// cb2 should execute before the job
145
- queueJob ( cb2 , true )
146
- queueJob ( cb3 , true )
142
+ queueJob ( cb2 , 1 , true )
143
+ queueJob ( cb3 , 1 , true )
147
144
}
148
145
149
146
const cb2 : SchedulerJob = ( ) => {
150
147
calls . push ( 'cb2' )
151
148
}
152
- cb2 . id = 1
153
-
154
149
const cb3 : SchedulerJob = ( ) => {
155
150
calls . push ( 'cb3' )
156
151
}
157
- cb3 . id = 1
158
152
159
- queueJob ( cb1 , true )
153
+ queueJob ( cb1 , undefined , true )
160
154
await nextTick ( )
161
155
expect ( calls ) . toEqual ( [ 'cb1' , 'cb2' , 'cb3' , 'job1' ] )
162
156
} )
@@ -166,36 +160,30 @@ describe('scheduler', () => {
166
160
const job1 : SchedulerJob = ( ) => {
167
161
calls . push ( 'job1' )
168
162
}
169
- job1 . id = 1
170
163
const job2 : SchedulerJob = ( ) => {
171
164
calls . push ( 'job2' )
172
- queueJob ( job5 )
173
- queueJob ( job6 , true )
165
+ queueJob ( job5 , 2 )
166
+ queueJob ( job6 , 2 , true )
174
167
}
175
- job2 . id = 2
176
168
const job3 : SchedulerJob = ( ) => {
177
169
calls . push ( 'job3' )
178
170
}
179
- job3 . id = 2
180
171
const job4 : SchedulerJob = ( ) => {
181
172
calls . push ( 'job4' )
182
173
}
183
- job4 . id = 3
184
174
const job5 : SchedulerJob = ( ) => {
185
175
calls . push ( 'job5' )
186
176
}
187
- job5 . id = 2
188
177
const job6 : SchedulerJob = ( ) => {
189
178
calls . push ( 'job6' )
190
179
}
191
- job6 . id = 2
192
180
193
181
// We need several jobs to test this properly, otherwise
194
182
// findInsertionIndex can yield the correct index by chance
195
- queueJob ( job4 , true )
196
- queueJob ( job2 , true )
197
- queueJob ( job3 , true )
198
- queueJob ( job1 , true )
183
+ queueJob ( job4 , 3 , true )
184
+ queueJob ( job2 , 2 , true )
185
+ queueJob ( job3 , 2 , true )
186
+ queueJob ( job1 , 1 , true )
199
187
200
188
await nextTick ( )
201
189
expect ( calls ) . toEqual ( [ 'job1' , 'job2' , 'job3' , 'job6' , 'job5' , 'job4' ] )
@@ -208,8 +196,8 @@ describe('scheduler', () => {
208
196
// when updating the props of a child component. This is handled
209
197
// directly inside `updateComponentPreRender` to avoid non atomic
210
198
// cb triggers (#1763)
211
- queueJob ( cb1 , true )
212
- queueJob ( cb2 , true )
199
+ queueJob ( cb1 , undefined , true )
200
+ queueJob ( cb2 , undefined , true )
213
201
flushPreFlushCbs ( )
214
202
calls . push ( 'job1' )
215
203
}
@@ -231,14 +219,13 @@ describe('scheduler', () => {
231
219
const calls : string [ ] = [ ]
232
220
const job1 : SchedulerJob = ( ) => {
233
221
calls . push ( 'job1' )
234
- queueJob ( job3 , true )
235
- queueJob ( job4 , true )
222
+ queueJob ( job3 , undefined , true )
223
+ queueJob ( job4 , undefined , true )
236
224
}
237
225
// job1 has no id
238
226
const job2 : SchedulerJob = ( ) => {
239
227
calls . push ( 'job2' )
240
228
}
241
- job2 . id = 1
242
229
const job3 : SchedulerJob = ( ) => {
243
230
calls . push ( 'job3' )
244
231
}
@@ -248,8 +235,8 @@ describe('scheduler', () => {
248
235
}
249
236
// job4 has no id
250
237
251
- queueJob ( job1 , true )
252
- queueJob ( job2 , true )
238
+ queueJob ( job1 , undefined , true )
239
+ queueJob ( job2 , 1 , true )
253
240
await nextTick ( )
254
241
expect ( calls ) . toEqual ( [ 'job1' , 'job3' , 'job4' , 'job2' ] )
255
242
} )
@@ -259,7 +246,7 @@ describe('scheduler', () => {
259
246
const spy = vi . fn ( )
260
247
const cb : SchedulerJob = ( ) => spy ( )
261
248
queuePostFlushCb ( ( ) => {
262
- queueJob ( cb , true )
249
+ queueJob ( cb , undefined , true )
263
250
} )
264
251
await nextTick ( )
265
252
expect ( spy ) . toHaveBeenCalled ( )
@@ -432,16 +419,13 @@ describe('scheduler', () => {
432
419
const job1 : SchedulerJob = ( ) => {
433
420
calls . push ( 'job1' )
434
421
}
435
- job1 . id = 1
436
-
437
422
const job2 : SchedulerJob = ( ) => {
438
423
calls . push ( 'job2' )
439
424
}
440
- job2 . id = 2
441
425
442
426
queuePostFlushCb ( ( ) => {
443
- queueJob ( job2 )
444
- queueJob ( job1 )
427
+ queueJob ( job2 , 2 )
428
+ queueJob ( job1 , 1 )
445
429
} )
446
430
447
431
await nextTick ( )
@@ -455,19 +439,16 @@ describe('scheduler', () => {
455
439
const job1 = ( ) => calls . push ( 'job1' )
456
440
// job1 has no id
457
441
const job2 = ( ) => calls . push ( 'job2' )
458
- job2 . id = 2
459
442
const job3 = ( ) => calls . push ( 'job3' )
460
- job3 . id = 1
461
443
const job4 : SchedulerJob = ( ) => calls . push ( 'job4' )
462
- job4 . id = 2
463
444
const job5 : SchedulerJob = ( ) => calls . push ( 'job5' )
464
445
// job5 has no id
465
446
466
447
queueJob ( job1 )
467
- queueJob ( job2 )
468
- queueJob ( job3 )
469
- queueJob ( job4 , true )
470
- queueJob ( job5 , true )
448
+ queueJob ( job2 , 2 )
449
+ queueJob ( job3 , 1 )
450
+ queueJob ( job4 , 2 , true )
451
+ queueJob ( job5 , undefined , true )
471
452
await nextTick ( )
472
453
expect ( calls ) . toEqual ( [ 'job5' , 'job3' , 'job4' , 'job2' , 'job1' ] )
473
454
} )
@@ -477,13 +458,11 @@ describe('scheduler', () => {
477
458
const cb1 = ( ) => calls . push ( 'cb1' )
478
459
// cb1 has no id
479
460
const cb2 = ( ) => calls . push ( 'cb2' )
480
- cb2 . id = 2
481
461
const cb3 = ( ) => calls . push ( 'cb3' )
482
- cb3 . id = 1
483
462
484
463
queuePostFlushCb ( cb1 )
485
- queuePostFlushCb ( cb2 )
486
- queuePostFlushCb ( cb3 )
464
+ queuePostFlushCb ( cb2 , 2 )
465
+ queuePostFlushCb ( cb3 , 1 )
487
466
await nextTick ( )
488
467
expect ( calls ) . toEqual ( [ 'cb3' , 'cb2' , 'cb1' ] )
489
468
} )
@@ -532,13 +511,10 @@ describe('scheduler', () => {
532
511
throw err
533
512
}
534
513
} )
535
- job1 . id = 1
536
-
537
514
const job2 : SchedulerJob = vi . fn ( )
538
- job2 . id = 2
539
515
540
- queueJob ( job1 )
541
- queueJob ( job2 )
516
+ queueJob ( job1 , 1 )
517
+ queueJob ( job2 , 2 )
542
518
543
519
try {
544
520
await nextTick ( )
@@ -552,8 +528,8 @@ describe('scheduler', () => {
552
528
expect ( job1 ) . toHaveBeenCalledTimes ( 1 )
553
529
expect ( job2 ) . toHaveBeenCalledTimes ( 0 )
554
530
555
- queueJob ( job1 )
556
- queueJob ( job2 )
531
+ queueJob ( job1 , 1 )
532
+ queueJob ( job2 , 2 )
557
533
558
534
await nextTick ( )
559
535
@@ -604,11 +580,10 @@ describe('scheduler', () => {
604
580
605
581
test ( 'recursive jobs can only be queued once non-recursively' , async ( ) => {
606
582
const job : SchedulerJob = vi . fn ( )
607
- job . id = 1
608
583
job . flags = SchedulerJobFlags . ALLOW_RECURSE
609
584
610
- queueJob ( job )
611
- queueJob ( job )
585
+ queueJob ( job , 1 )
586
+ queueJob ( job , 1 )
612
587
613
588
await nextTick ( )
614
589
@@ -620,15 +595,14 @@ describe('scheduler', () => {
620
595
621
596
const job : SchedulerJob = vi . fn ( ( ) => {
622
597
if ( recurse ) {
623
- queueJob ( job )
624
- queueJob ( job )
598
+ queueJob ( job , 1 )
599
+ queueJob ( job , 1 )
625
600
recurse = false
626
601
}
627
602
} )
628
- job . id = 1
629
603
job . flags = SchedulerJobFlags . ALLOW_RECURSE
630
604
631
- queueJob ( job )
605
+ queueJob ( job , 1 )
632
606
633
607
await nextTick ( )
634
608
@@ -641,22 +615,19 @@ describe('scheduler', () => {
641
615
const job1 : SchedulerJob = ( ) => {
642
616
if ( recurse ) {
643
617
// job2 is already queued, so this shouldn't do anything
644
- queueJob ( job2 )
618
+ queueJob ( job2 , 2 )
645
619
recurse = false
646
620
}
647
621
}
648
- job1 . id = 1
649
-
650
622
const job2 : SchedulerJob = vi . fn ( ( ) => {
651
623
if ( recurse ) {
652
- queueJob ( job1 )
653
- queueJob ( job2 )
624
+ queueJob ( job1 , 1 )
625
+ queueJob ( job2 , 2 )
654
626
}
655
627
} )
656
- job2 . id = 2
657
628
job2 . flags = SchedulerJobFlags . ALLOW_RECURSE
658
629
659
- queueJob ( job2 )
630
+ queueJob ( job2 , 2 )
660
631
661
632
await nextTick ( )
662
633
@@ -667,38 +638,35 @@ describe('scheduler', () => {
667
638
let recurse = true
668
639
669
640
const job1 : SchedulerJob = vi . fn ( ( ) => {
670
- queueJob ( job3 , true )
671
- queueJob ( job3 , true )
641
+ queueJob ( job3 , 3 , true )
642
+ queueJob ( job3 , 3 , true )
672
643
flushPreFlushCbs ( )
673
644
} )
674
- job1 . id = 1
675
645
676
646
const job2 : SchedulerJob = vi . fn ( ( ) => {
677
647
if ( recurse ) {
678
648
// job2 does not allow recurse, so this shouldn't do anything
679
- queueJob ( job2 , true )
649
+ queueJob ( job2 , 2 , true )
680
650
681
651
// job3 is already queued, so this shouldn't do anything
682
- queueJob ( job3 , true )
652
+ queueJob ( job3 , 3 , true )
683
653
recurse = false
684
654
}
685
655
} )
686
- job2 . id = 2
687
656
688
657
const job3 : SchedulerJob = vi . fn ( ( ) => {
689
658
if ( recurse ) {
690
- queueJob ( job2 , true )
691
- queueJob ( job3 , true )
659
+ queueJob ( job2 , 2 , true )
660
+ queueJob ( job3 , 3 , true )
692
661
693
662
// The jobs are already queued, so these should have no effect
694
- queueJob ( job2 , true )
695
- queueJob ( job3 , true )
663
+ queueJob ( job2 , 2 , true )
664
+ queueJob ( job3 , 3 , true )
696
665
}
697
666
} )
698
- job3 . id = 3
699
667
job3 . flags = SchedulerJobFlags . ALLOW_RECURSE
700
668
701
- queueJob ( job1 , true )
669
+ queueJob ( job1 , 1 , true )
702
670
703
671
await nextTick ( )
704
672
@@ -755,7 +723,7 @@ describe('scheduler', () => {
755
723
spy ( )
756
724
flushPreFlushCbs ( )
757
725
}
758
- queueJob ( job , true )
726
+ queueJob ( job , undefined , true )
759
727
await nextTick ( )
760
728
expect ( spy ) . toHaveBeenCalledTimes ( 1 )
761
729
} )
@@ -767,16 +735,14 @@ describe('scheduler', () => {
767
735
const job1 : SchedulerJob = ( ) => {
768
736
calls . push ( 'job1' )
769
737
}
770
- job1 . id = 1
771
738
772
739
const job2 : SchedulerJob = ( ) => {
773
740
calls . push ( 'job2' )
774
741
}
775
- job2 . id = 2
776
742
777
743
queuePostFlushCb ( ( ) => {
778
- queueJob ( job2 , true )
779
- queueJob ( job1 , true )
744
+ queueJob ( job2 , 2 , true )
745
+ queueJob ( job1 , 1 , true )
780
746
781
747
// e.g. nested app.mount() call
782
748
flushPreFlushCbs ( )
@@ -807,14 +773,14 @@ describe('scheduler', () => {
807
773
const cb1 = ( ) => calls . push ( 'cb1' )
808
774
// cb1 has no id
809
775
const cb2 = ( ) => calls . push ( 'cb2' )
810
- cb2 . id = - 1
811
776
const queueAndFlush = ( hook : Function ) => {
812
777
queuePostFlushCb ( hook )
813
778
flushPostFlushCbs ( )
814
779
}
815
780
816
781
queueAndFlush ( ( ) => {
817
- queuePostFlushCb ( [ cb1 , cb2 ] )
782
+ queuePostFlushCb ( cb1 )
783
+ queuePostFlushCb ( cb2 , - 1 )
818
784
flushPostFlushCbs ( )
819
785
} )
820
786
0 commit comments