UNPKG

wix-style-react

Version:
69 lines (62 loc) 2.03 kB
import ReactTestUtils from 'react-dom/test-utils'; import { Appearance } from './constants'; var sectionHelperDriverFactory = function sectionHelperDriverFactory(_ref) { var element = _ref.element; var hasAppearance = function hasAppearance(appearance) { return element.dataset.appearance === appearance; }; var byHook = function byHook(hook) { return element.querySelector("[data-hook=\"".concat(hook, "\"]")); }; var getCloseButton = function getCloseButton() { return byHook('sectionhelper-close-btn'); }; var getActionButton = function getActionButton() { return byHook('sectionhelper-action-btn'); }; return { exists: function exists() { return !!element; }, titleText: function titleText() { return byHook('sectionhelper-title').textContent; }, actionText: function actionText() { return getActionButton().textContent; }, clickAction: function clickAction() { ReactTestUtils.Simulate.click(getActionButton()); }, clickClose: function clickClose() { ReactTestUtils.Simulate.click(getCloseButton()); }, isCloseButtonDisplayed: function isCloseButtonDisplayed() { return !!getCloseButton(); }, textContent: function textContent() { return element.textContent; }, isWarning: function isWarning() { return hasAppearance(Appearance.Warning); }, isStandard: function isStandard() { return hasAppearance(Appearance.Standard); }, isDanger: function isDanger() { return hasAppearance(Appearance.Danger); }, isExperimentalDark: function isExperimentalDark() { return hasAppearance(Appearance.ExperimentalDark); }, isSuccess: function isSuccess() { return hasAppearance(Appearance.Success); }, isPremium: function isPremium() { return hasAppearance(Appearance.Premium); }, isPreview: function isPreview() { return hasAppearance(Appearance.Preview); } }; }; export default sectionHelperDriverFactory;