@wix/design-system
Version:
@wix/design-system
126 lines (125 loc) • 5.09 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _react = _interopRequireDefault(require("react"));
var _unit = require("../../utils/test-utils/unit");
var _SocialButton = _interopRequireDefault(require("../SocialButton"));
var _SocialButtonPrivateUni = require("./SocialButton.private.uni.driver");
var _jsxFileName = "/home/builduser/work/57e038ea7326c1ec/packages/wix-design-system/dist/cjs/SocialButton/test/SocialButton.spec.jsx",
_this = void 0;
describe('SocialButton', function () {
var render = (0, _unit.createRendererWithUniDriver)(_SocialButtonPrivateUni.socialButtonPrivateDriverFactory);
afterEach(function () {
(0, _unit.cleanup)();
});
it('should render', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
var _render, driver;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_render = render(/*#__PURE__*/_react["default"].createElement(_SocialButton["default"], {
__self: _this,
__source: {
fileName: _jsxFileName,
lineNumber: 18,
columnNumber: 31
}
})), driver = _render.driver;
_context.t0 = expect;
_context.next = 4;
return driver.exists();
case 4:
_context.t1 = _context.sent;
(0, _context.t0)(_context.t1).toBe(true);
case 6:
case "end":
return _context.stop();
}
}, _callee);
})));
describe('prop `text`', function () {
it('should be same [when] given', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
var text, _render2, driver;
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
text = 'Share On Facebook';
_render2 = render(/*#__PURE__*/_react["default"].createElement(_SocialButton["default"], {
text: text,
__self: _this,
__source: {
fileName: _jsxFileName,
lineNumber: 25,
columnNumber: 33
}
})), driver = _render2.driver;
_context2.t0 = expect;
_context2.next = 5;
return driver.getText();
case 5:
_context2.t1 = _context2.sent;
(0, _context2.t0)(_context2.t1).toBe(text);
case 7:
case "end":
return _context2.stop();
}
}, _callee2);
})));
});
describe('prop `onClick`', function () {
it('should be called [when] clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
var onClick, _render3, driver;
return _regenerator["default"].wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
onClick = vi.fn();
_render3 = render(/*#__PURE__*/_react["default"].createElement(_SocialButton["default"], {
onClick: onClick,
__self: _this,
__source: {
fileName: _jsxFileName,
lineNumber: 33,
columnNumber: 33
}
})), driver = _render3.driver;
_context3.next = 4;
return driver.click();
case 4:
expect(onClick).toHaveBeenCalled();
expect(onClick).toHaveBeenCalledTimes(1);
case 6:
case "end":
return _context3.stop();
}
}, _callee3);
})));
it('should not be called [when] component is disabled', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
var onClick, _render4, driver;
return _regenerator["default"].wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
onClick = vi.fn();
_render4 = render(/*#__PURE__*/_react["default"].createElement(_SocialButton["default"], {
disabled: true,
onClick: onClick,
__self: _this,
__source: {
fileName: _jsxFileName,
lineNumber: 42,
columnNumber: 33
}
})), driver = _render4.driver;
_context4.next = 4;
return driver.click();
case 4:
expect(onClick).not.toHaveBeenCalled();
expect(onClick).toHaveBeenCalledTimes(0);
case 6:
case "end":
return _context4.stop();
}
}, _callee4);
})));
});
});