blob: 3a21647869f6e096904e6a58a7d7abf594e8eac1 [file] [log] [blame]
import './index';
import { expect } from 'chai';
import { TimelineSk } from './timeline-sk';
import {
setUpElementUnderTest, eventPromise, noEventPromise,
} from '../../../infra-sk/modules/test_util';
import { MoveFrameEvent, MoveFrameEventDetail } from '../events';
describe('timeline-sk', () => {
const newInstance = setUpElementUnderTest<TimelineSk>('timeline-sk');
let timelineSk: TimelineSk;
beforeEach(() => {
timelineSk = newInstance();
});
describe('playback', () => {
it('Starts playing from last position', async () => {
const promise1 = eventPromise<CustomEvent<MoveFrameEventDetail>>(MoveFrameEvent, 100);
timelineSk.item = 0;
expect((await promise1).detail.frame).to.equal(0);
// click play
const promise2 = eventPromise<CustomEvent<MoveFrameEventDetail>>(MoveFrameEvent, 100);
const pb = timelineSk.querySelector<HTMLElement>('#play-button-v')!;
pb.click();
expect((await promise2).detail.frame).to.equal(1);
// click pause
pb.click();
await noEventPromise(MoveFrameEvent, 100);
});
});
});