import { minimum } from '../data/html';
import Splide from '../../src/js/splide';
import { COMPLETE } from '../../src/js/components';
describe( 'Splide with "focus" option', () => {
let splide;
beforeEach( () => {
document.body.innerHTML = minimum;
splide = new Splide( '#splide' ).mount( COMPLETE );
} );
test( 'should locate the active slide on the center of the slider if the value is "center".', () => {
const { Track, Elements: { track } } = splide.Components;
const width = 900;
const perView = 3;
const slideWidth = width / perView;
Object.defineProperty( track, 'clientWidth', { value: width } );
splide.options = { focus: 'center', perView };
expect( Track.offset ).toBe( - ( width / 2 - slideWidth / 2 ) );
} );
test( 'should locate the active slide according to the focus index.', () => {
const { Track, Elements: { track } } = splide.Components;
const width = 900;
const perView = 3;
const focus = 2;
const slideWidth = width / perView;
Object.defineProperty( track, 'clientWidth', { value: width } );
splide.options = { focus, perView };
expect( Track.offset ).toBe( - slideWidth * focus );
} );
} );