wix-style-react
Version:
wix-style-react
69 lines (60 loc) • 2.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _testUtils = require('react-dom/test-utils');
var _testUtils2 = _interopRequireDefault(_testUtils);
var _utils = require('../../../test/utils');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var tooltipDriverFactory = function tooltipDriverFactory(_ref) {
var element = _ref.element,
wrapper = _ref.wrapper;
var target = element.querySelector("[data-hook='target']").children[0];
var tooltipInner = element.querySelector("[data-hook='tooltip-inner']");
var tooltipContent = tooltipInner.querySelector("[data-hook='tooltip-content']");
return {
isShown: function isShown() {
return (0, _utils.isClassExists)(tooltipInner, 'active');
},
focus: function focus() {
return _testUtils2.default.Simulate.focus(target);
},
blur: function blur() {
return _testUtils2.default.Simulate.blur(target);
},
click: function click() {
return _testUtils2.default.Simulate.click(target);
},
mouseEnter: function mouseEnter() {
return _testUtils2.default.Simulate.mouseEnter(target);
},
mouseLeave: function mouseLeave() {
return _testUtils2.default.Simulate.mouseLeave(target);
},
hasErrorTheme: function hasErrorTheme() {
return !!wrapper.querySelector('.error');
},
hasDarkTheme: function hasDarkTheme() {
return !!wrapper.querySelector('.dark');
},
hasLightTheme: function hasLightTheme() {
return !!wrapper.querySelector('.light');
},
getTooltipWrapper: function getTooltipWrapper() {
return wrapper.querySelector("[data-hook='tooltip']");
},
getChildren: function getChildren() {
return element.innerHTML;
},
getPlacement: function getPlacement() {
return tooltipInner.getAttribute('class').split(' ')[2];
},
getContent: function getContent() {
return tooltipContent.innerHTML;
},
getWrapper: function getWrapper() {
return wrapper;
}
};
};
exports.default = tooltipDriverFactory;