UNPKG

wix-style-react

Version:
120 lines (99 loc) 4.37 kB
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator"; import _defineProperty from "@babel/runtime/helpers/defineProperty"; import _regeneratorRuntime from "@babel/runtime/regenerator"; function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } import { baseUniDriverFactory, findByHook } from '../../test/utils/unidriver'; import { tooltipDriverFactory } from '../Tooltip/Tooltip.uni.driver'; import { dataHooks } from './constants'; export var checkToggleDriverFactory = function checkToggleDriverFactory(base, body) { var getTooltipDriver = function getTooltipDriver() { return tooltipDriverFactory(findByHook(base, dataHooks.tooltip), body); }; return _objectSpread(_objectSpread({}, baseUniDriverFactory(base, body)), {}, { /** * Checks whether CheckToggle is checked * @returns {Promise<boolean>} */ isChecked: function isChecked() { return findByHook(base, dataHooks.toggle)._prop('checked'); }, /** * Clicks on the element * @returns {Promise<void>} */ click: function () { var _click = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() { var input, isDisabled; return _regeneratorRuntime.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return findByHook(base, dataHooks.toggle); case 2: input = _context.sent; _context.next = 5; return input._prop('disabled'); case 5: isDisabled = _context.sent; if (isDisabled) { _context.next = 9; break; } _context.next = 9; return input.click(); case 9: case "end": return _context.stop(); } } }, _callee); })); function click() { return _click.apply(this, arguments); } return click; }(), /** * Gets the tooltip content, throws an error if content is not provided. * @returns {Promise<string>} * */ getTooltipContent: function () { var _getTooltipContent = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() { var tooltipDriver; return _regeneratorRuntime.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: tooltipDriver = getTooltipDriver(); _context2.next = 3; return tooltipDriver.exists(); case 3: if (!_context2.sent) { _context2.next = 11; break; } _context2.next = 6; return tooltipDriver.mouseEnter(); case 6: _context2.next = 8; return tooltipDriver.getTooltipText(); case 8: return _context2.abrupt("return", _context2.sent); case 11: throw new Error("Message was not provided"); case 12: case "end": return _context2.stop(); } } }, _callee2); })); function getTooltipContent() { return _getTooltipContent.apply(this, arguments); } return getTooltipContent; }() }); };