UNPKG

wix-style-react

Version:
40 lines 1.87 kB
import ReactTestUtils from 'react-dom/test-utils'; import { iconButtonDriverFactory } from '../IconButton/IconButton.uni.driver'; import { isClassExists } from '../test-utils/utils'; import { carouselDriverFactory as publicDriver } from './Carousel.driver'; export default ({ element }) => { const arrowButtonDriver = direction => iconButtonDriverFactory({ wrapper: element, dataHook: `${direction}-button`, }); return { ...publicDriver({ element }), hasClass: className => isClassExists(element, className), getCurrentImageIndex: () => { const currentSlide = element.querySelector('[aria-hidden="false"]'); return Number(currentSlide.dataset.index); }, isPrevButtonDisabled: () => arrowButtonDriver('prev').isButtonDisabled(), isNextButtonDisabled: () => arrowButtonDriver('next').isButtonDisabled(), loadImages: () => { element .querySelectorAll('[data-hook="carousel-img"]') .forEach(img => ReactTestUtils.Simulate.load(img)); }, mouseOver: () => { const imageContainer = element.querySelector('.slick-current'); ReactTestUtils.Simulate.mouseOver(imageContainer); }, mouseOut: () => { const imageContainer = element.querySelector('.slick-current'); ReactTestUtils.Simulate.mouseOut(imageContainer); }, clickPageNavigationDot: index => { const pageNavigator = element.querySelector(`[data-hook="page-navigation-${index}"]`); ReactTestUtils.Simulate.click(pageNavigator); }, isPageNavigationDotExists: () => !!element.querySelector(`[data-hook^="page-navigation-"]`), getChildText: child => child.textContent, }; }; //# sourceMappingURL=Carousel.private.driver.js.map