fix(animations): always fire inner trigger callbacks even if blocked by parent animations (#19753)
Closes #19100 PR Close #19753
This commit is contained in:

committed by
Miško Hevery

parent
b1f8eb14c8
commit
814f06289b
@ -40,5 +40,29 @@ export function main() {
|
||||
player.destroy();
|
||||
expect(log).toEqual(['started', 'done', 'destroy']);
|
||||
});
|
||||
|
||||
it('should fire start/done callbacks manually when called directly', fakeAsync(() => {
|
||||
const log: string[] = [];
|
||||
|
||||
const player = new NoopAnimationPlayer();
|
||||
player.onStart(() => log.push('started'));
|
||||
player.onDone(() => log.push('done'));
|
||||
flushMicrotasks();
|
||||
|
||||
player.triggerCallback('start');
|
||||
expect(log).toEqual(['started']);
|
||||
|
||||
player.play();
|
||||
expect(log).toEqual(['started']);
|
||||
|
||||
player.triggerCallback('done');
|
||||
expect(log).toEqual(['started', 'done']);
|
||||
|
||||
player.finish();
|
||||
expect(log).toEqual(['started', 'done']);
|
||||
|
||||
flushMicrotasks();
|
||||
expect(log).toEqual(['started', 'done']);
|
||||
}));
|
||||
});
|
||||
}
|
||||
|
Reference in New Issue
Block a user