| 123456789101112131415161718192021222324252627282930313233 | import { minimum } from '../data/html';import Splide from '../../src/js/splide';import { COMPLETE } from '../../src/js/components';describe( 'The Autoplay', () => {	beforeEach( () => {		document.body.innerHTML = minimum;		jest.spyOn( window, 'requestAnimationFrame' ).mockImplementation( callback => {			setTimeout( () => callback( new Date().getTime() ), 16 );		} );	} );	test( 'should move slides automatically, emitting play/pause events.', done => {		const splide          = new Splide( '#splide', { autoplay: true, interval: 100 }, COMPLETE );		const playCallback    = jest.fn();		const playingCallback = jest.fn();		splide			.on( 'autoplay:play', playCallback )			.on( 'autoplay:playing', playingCallback )			.on( 'autoplay:pause', () => {				expect( splide.index ).toBe( 1 );				expect( playCallback ).toHaveBeenCalled();				expect( playingCallback ).toHaveBeenCalled();				done();			} );		splide.mount();		setTimeout( () => splide.Components.Autoplay.pause(), 120 );	} );} );
 |