wix-style-react
Version:
wix-style-react
121 lines (109 loc) • 3.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _testkit = require('../../testkit');
var _AddItem = require('../AddItem/AddItem.driver');
var _AddItem2 = _interopRequireDefault(_AddItem);
var _Tooltip = require('../Tooltip/Tooltip.driver');
var _Tooltip2 = _interopRequireDefault(_Tooltip);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var imageViewerDriverFactory = function imageViewerDriverFactory(_ref) {
var element = _ref.element,
eventTrigger = _ref.eventTrigger;
var addItemDataHook = 'add-image';
var updateDataHook = 'update-image';
var removeDataHook = 'remove-image';
var byHook = function byHook(dataHook) {
return element.querySelector('[data-hook="' + dataHook + '"]');
};
var image = function image() {
return byHook('image-viewer-image');
};
var errorIcon = function errorIcon() {
return byHook('error-tooltip');
};
var addItem = function addItem() {
return byHook(addItemDataHook);
};
var addItemDriver = (0, _AddItem2.default)({
element: element,
eventTrigger: eventTrigger
});
var tooltipDriver = addItemDriver.getTooltipDriver();
var addItemClick = function addItemClick() {
return (0, _AddItem2.default)({
element: byHook('add-image'),
eventTrigger: eventTrigger
}).click();
};
var updateIcon = function updateIcon() {
return byHook(updateDataHook);
};
var removeIcon = function removeIcon() {
return byHook(removeDataHook);
};
var updateButton = function updateButton() {
return (0, _testkit.buttonTestkitFactory)({ wrapper: element, dataHook: updateDataHook });
};
var removeButton = function removeButton() {
return (0, _testkit.buttonTestkitFactory)({ wrapper: element, dataHook: removeDataHook });
};
return {
getAddItemDataHook: function getAddItemDataHook() {
return addItemDataHook;
},
getElement: function getElement() {
return element;
},
getContainerStyles: function getContainerStyles() {
return element.getAttribute('style');
},
getImageUrl: function getImageUrl() {
return image().getAttribute('src');
},
getErrorTooltipContent: function getErrorTooltipContent() {
return (0, _Tooltip2.default)({
element: errorIcon()
}).hoverAndGetContent();
},
getAddTooltipContent: function getAddTooltipContent() {
return tooltipDriver.hoverAndGetContent();
},
getUpdateTooltipContent: function getUpdateTooltipContent() {
return (0, _Tooltip2.default)({
element: updateIcon()
}).hoverAndGetContent();
},
getRemoveTooltipContent: function getRemoveTooltipContent() {
return (0, _Tooltip2.default)({
element: removeIcon()
}).hoverAndGetContent();
},
isAddItemVisible: function isAddItemVisible() {
return !!addItem();
},
isImageVisible: function isImageVisible() {
return !!image();
},
isErrorVisible: function isErrorVisible() {
return !!errorIcon();
},
clickAdd: function clickAdd() {
return addItemClick();
},
clickUpdate: function clickUpdate() {
return updateButton().click();
},
clickRemove: function clickRemove() {
return removeButton().click();
},
updateExists: function updateExists() {
return updateButton().exists();
},
exists: function exists() {
return !!element;
}
};
};
exports.default = imageViewerDriverFactory;