File "general.test.ts"
Full path: /home/fsibplc/public_html/sommilito-bank2/splide-4.1.3/src/js/components/Keyboard/test/general.test.ts
File
size: 2.52 B (2.52 KB bytes)
MIME-type: text/x-java
Charset: utf-8
Download Open Edit Advanced Editor Back
import { RTL, TTB } from '../../../constants/directions';
import { init, keydown, wait } from '../../../test';
describe( 'Keyboard', () => {
test( 'can control the slider by keyboards.', async () => {
const splide = init( { speed: 0, keyboard: 'global' } );
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 2 );
await wait();
keydown( 'ArrowLeft' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowLeft' );
expect( splide.index ).toBe( 0 );
} );
test( 'can control the slider by keyboards in TTB mode.', async () => {
const splide = init( { direction: TTB, height: 1, speed: 0, keyboard: 'global' } );
keydown( 'ArrowDown' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowDown' );
expect( splide.index ).toBe( 2 );
await wait();
keydown( 'ArrowUp' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowUp' );
expect( splide.index ).toBe( 0 );
} );
test( 'can control the slider by keyboards in RTL mode.', async () => {
const splide = init( { direction: RTL, speed: 0, keyboard: 'global' } );
keydown( 'ArrowLeft' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowLeft' );
expect( splide.index ).toBe( 2 );
await wait();
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 0 );
} );
test( 'can control the slider by keyboards only when the slider has focus in the `focused` mode.', async () => {
const splide = init( { keyboard: 'focused', speed: 0 } );
const { root } = splide;
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 0 );
await wait();
splide.Components.Arrows.arrows.prev.focus();
await wait();
keydown( 'ArrowRight', root );
expect( splide.index ).toBe( 1 );
} );
test( 'can disable the keyboard input.', async () => {
const splide = init( { speed: 0, keyboard: 'global' } );
const { disable } = splide.Components.Keyboard;
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 1 );
await wait();
disable( true );
keydown( 'ArrowRight' );
expect( splide.index ).toBe( 1 );
await wait();
keydown( 'ArrowLeft' );
expect( splide.index ).toBe( 1 );
await wait();
disable( false );
keydown( 'ArrowLeft' );
expect( splide.index ).toBe( 0 );
} );
} );