UNPKG

@wix/design-system

Version:

@wix/design-system

206 lines (205 loc) 8.03 kB
"use strict"; 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 _FacesRatingBar = _interopRequireDefault(require("../FacesRatingBar")); var _FacesRatingBarPrivateUni = require("./FacesRatingBar.private.uni.driver"); var _jsxFileName = "/home/builduser/work/57e038ea7326c1ec/packages/wix-design-system/dist/cjs/FacesRatingBar/test/FacesRatingBar.spec.jsx", _this = void 0; describe(_FacesRatingBar["default"].displayName, function () { var render = (0, _unit.createRendererWithUniDriver)(_FacesRatingBarPrivateUni.facesRatingBarPrivateDriverFactory); afterEach(_unit.cleanup); it('should render the faces rating bar', /*#__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(_FacesRatingBar["default"], { value: 3, __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); }))); it('expect onChange to be called after selecting a rating', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() { var onChange, _render2, driver; return _regenerator["default"].wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: onChange = vi.fn(); _render2 = render(/*#__PURE__*/_react["default"].createElement(_FacesRatingBar["default"], { value: 0, onChange: onChange, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 25, columnNumber: 31 } })), driver = _render2.driver; _context2.t0 = expect; _context2.next = 5; return driver.getSelectedRating(); case 5: _context2.t1 = _context2.sent; (0, _context2.t0)(_context2.t1).toEqual(0); _context2.next = 9; return driver.selectRating(4); case 9: expect(onChange).toHaveBeenCalledTimes(1); expect(onChange).toHaveBeenCalledWith(4); case 11: case "end": return _context2.stop(); } }, _callee2); }))); describe('should show correct number of faces', function () { it.each([{ maxValue: 2 }, { maxValue: 3 }, { maxValue: 4 }, { maxValue: 5 }])('should show %s faces when maxValue is "%s"', /*#__PURE__*/function () { var _ref4 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref3) { var maxValue, _render3, driver; return _regenerator["default"].wrap(function _callee3$(_context3) { while (1) switch (_context3.prev = _context3.next) { case 0: maxValue = _ref3.maxValue; _render3 = render(/*#__PURE__*/_react["default"].createElement(_FacesRatingBar["default"], { value: 2, maxValue: maxValue, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 42, columnNumber: 9 } })), driver = _render3.driver; _context3.t0 = expect; _context3.next = 5; return driver.getFacesCount(); case 5: _context3.t1 = _context3.sent; (0, _context3.t0)(_context3.t1).toEqual(maxValue); case 7: case "end": return _context3.stop(); } }, _callee3); })); return function (_x) { return _ref4.apply(this, arguments); }; }()); }); describe('description values', function () { it.each([{ index: 1, text: 'Strong Negative' }, { index: 2, text: 'Negative' }, { index: 3, text: 'Neutral' }, { index: 4, text: 'Positive' }, { index: 5, text: 'Strong Positive' }])('should display the correct description value on hover', /*#__PURE__*/function () { var _ref5 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(descriptionValue) { var descriptionValues, _render4, driver, tooltipDriver; return _regenerator["default"].wrap(function _callee4$(_context4) { while (1) switch (_context4.prev = _context4.next) { case 0: descriptionValues = ['Strong Negative', 'Negative', 'Neutral', 'Positive', 'Strong Positive']; _render4 = render(/*#__PURE__*/_react["default"].createElement(_FacesRatingBar["default"], { value: descriptionValue.index, descriptionValues: descriptionValues, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 67, columnNumber: 11 } })), driver = _render4.driver; _context4.next = 4; return driver.getCurrentTooltipDriver(descriptionValue.index); case 4: tooltipDriver = _context4.sent; _context4.t0 = expect; _context4.next = 8; return tooltipDriver.getTooltipText(); case 8: _context4.t1 = _context4.sent; (0, _context4.t0)(_context4.t1).toEqual(descriptionValue.text); case 10: case "end": return _context4.stop(); } }, _callee4); })); return function (_x2) { return _ref5.apply(this, arguments); }; }()); it.each([1, 2, 3, 4, 5])('should not display description values', /*#__PURE__*/function () { var _ref6 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(index) { var _render5, driver, tooltipDriver; return _regenerator["default"].wrap(function _callee5$(_context5) { while (1) switch (_context5.prev = _context5.next) { case 0: _render5 = render(/*#__PURE__*/_react["default"].createElement(_FacesRatingBar["default"], { value: index, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 85, columnNumber: 35 } })), driver = _render5.driver; _context5.next = 3; return driver.getCurrentTooltipDriver(index); case 3: tooltipDriver = _context5.sent; _context5.t0 = expect; _context5.next = 7; return tooltipDriver.tooltipExists(); case 7: _context5.t1 = _context5.sent; (0, _context5.t0)(_context5.t1).toEqual(false); case 9: case "end": return _context5.stop(); } }, _callee5); })); return function (_x3) { return _ref6.apply(this, arguments); }; }()); }); });