UNPKG

@wix/design-system

Version:

@wix/design-system

321 lines (320 loc) 14 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 _WixDesignSystemProviderUni = require("../WixDesignSystemProvider.uni.driver"); var _WixDesignSystemProvider = _interopRequireDefault(require("../WixDesignSystemProvider")); var _context0 = require("../../WixStyleReactEnvironmentProvider/context"); var _context1 = require("../context"); var _index = require("../../utils/test-utils/react/index"); var _jsxFileName = "/home/builduser/work/57e038ea7326c1ec/packages/wix-design-system/dist/cjs/WixDesignSystemProvider/test/WixDesignSystemProvider.spec.jsx"; describe('wixDesignSystemProviderDriverFactory', function () { afterEach(function () { return (0, _index.cleanup)(); }); describe('[async]', function () { runTests((0, _index.createRendererWithUniDriver)(_WixDesignSystemProviderUni.wixDesignSystemProviderDriverFactory)); }); function runTests(render) { var _this = this; describe('isNewColorsBrandingEnabled', function () { it('should return true when new colors branding is set to true', /*#__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(_WixDesignSystemProvider["default"], { features: { newColorsBranding: true }, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 22, columnNumber: 11 } })), driver = _render.driver; _context.t0 = expect; _context.next = 4; return driver.isNewColorsBrandingEnabled(); case 4: _context.t1 = _context.sent; (0, _context.t0)(_context.t1).toBe(true); case 6: case "end": return _context.stop(); } }, _callee); }))); it('should return true when new colors branding is set to false', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() { var _render2, driver; return _regenerator["default"].wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: _render2 = render(/*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { features: { newColorsBranding: false }, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 29, columnNumber: 11 } })), driver = _render2.driver; _context2.t0 = expect; _context2.next = 4; return driver.isNewColorsBrandingEnabled(); case 4: _context2.t1 = _context2.sent; (0, _context2.t0)(_context2.t1).toBe(true); case 6: case "end": return _context2.stop(); } }, _callee2); }))); it('should return true when new colors branding is not defined', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() { var _render3, driver; return _regenerator["default"].wrap(function _callee3$(_context3) { while (1) switch (_context3.prev = _context3.next) { case 0: _render3 = render(/*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 35, columnNumber: 35 } })), driver = _render3.driver; _context3.t0 = expect; _context3.next = 4; return driver.isNewColorsBrandingEnabled(); case 4: _context3.t1 = _context3.sent; (0, _context3.t0)(_context3.t1).toBe(true); case 6: case "end": return _context3.stop(); } }, _callee3); }))); }); describe('WixStyleReactEnvironmentContext interop', function () { it('should wrap children with default WixStyleReactEnvironmentContext provider', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() { var consumerFn; return _regenerator["default"].wrap(function _callee4$(_context4) { while (1) switch (_context4.prev = _context4.next) { case 0: consumerFn = vi.fn(); render(/*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 45, columnNumber: 11 } }, /*#__PURE__*/_react["default"].createElement(_context0.WixStyleReactEnvironmentContext.Consumer, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 46, columnNumber: 13 } }, consumerFn))); expect(consumerFn).toHaveBeenCalledWith({ locale: 'en', pageHeaderId: undefined }); case 3: case "end": return _context4.stop(); } }, _callee4); }))); it('should pass locale and pageHeaderId via WixStyleReactEnvironmentContext', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5() { var consumerFn; return _regenerator["default"].wrap(function _callee5$(_context5) { while (1) switch (_context5.prev = _context5.next) { case 0: consumerFn = vi.fn(); render(/*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { locale: "custom-locale", pageHeaderId: "custom-page-header-id", __self: _this, __source: { fileName: _jsxFileName, lineNumber: 62, columnNumber: 11 } }, /*#__PURE__*/_react["default"].createElement(_context0.WixStyleReactEnvironmentContext.Consumer, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 66, columnNumber: 13 } }, consumerFn))); expect(consumerFn).toHaveBeenCalledWith({ locale: 'custom-locale', pageHeaderId: 'custom-page-header-id' }); case 3: case "end": return _context5.stop(); } }, _callee5); }))); it('should override locale inherited from parent WixStyleReactEnvironmentContext', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6() { var consumerFn; return _regenerator["default"].wrap(function _callee6$(_context6) { while (1) switch (_context6.prev = _context6.next) { case 0: consumerFn = vi.fn(); render(/*#__PURE__*/_react["default"].createElement(_context0.WixStyleReactEnvironmentContext.Provider, { value: { locale: 'custom-locale', pageHeaderId: 'custom-page-header-id' }, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 82, columnNumber: 11 } }, /*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { locale: "overridden-locale", __self: _this, __source: { fileName: _jsxFileName, lineNumber: 88, columnNumber: 13 } }, /*#__PURE__*/_react["default"].createElement(_context0.WixStyleReactEnvironmentContext.Consumer, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 89, columnNumber: 15 } }, consumerFn)))); expect(consumerFn).toHaveBeenCalledWith({ locale: 'overridden-locale', pageHeaderId: 'custom-page-header-id' }); case 3: case "end": return _context6.stop(); } }, _callee6); }))); it('should override pageHeaderId inherited from parent WixStyleReactEnvironmentContext', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7() { var consumerFn; return _regenerator["default"].wrap(function _callee7$(_context7) { while (1) switch (_context7.prev = _context7.next) { case 0: consumerFn = vi.fn(); render(/*#__PURE__*/_react["default"].createElement(_context0.WixStyleReactEnvironmentContext.Provider, { value: { locale: 'custom-locale', pageHeaderId: 'custom-page-header-id' }, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 106, columnNumber: 11 } }, /*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { pageHeaderId: "overridden-page-header-id", __self: _this, __source: { fileName: _jsxFileName, lineNumber: 112, columnNumber: 13 } }, /*#__PURE__*/_react["default"].createElement(_context0.WixStyleReactEnvironmentContext.Consumer, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 113, columnNumber: 15 } }, consumerFn)))); expect(consumerFn).toHaveBeenCalledWith({ locale: 'custom-locale', pageHeaderId: 'overridden-page-header-id' }); case 3: case "end": return _context7.stop(); } }, _callee7); }))); }); describe('WixDesignSystemContext interop', function () { it('should pass contextClassName via WixDesignSystemContext', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee8() { var consumerFn; return _regenerator["default"].wrap(function _callee8$(_context8) { while (1) switch (_context8.prev = _context8.next) { case 0: consumerFn = vi.fn(); render(/*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { contextClassName: "custom-context-class", __self: _this, __source: { fileName: _jsxFileName, lineNumber: 132, columnNumber: 11 } }, /*#__PURE__*/_react["default"].createElement(_context1.WixDesignSystemContext.Consumer, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 133, columnNumber: 13 } }, consumerFn))); expect(consumerFn).toHaveBeenCalledWith(expect.objectContaining({ contextClassName: 'custom-context-class' })); case 3: case "end": return _context8.stop(); } }, _callee8); }))); it('should have empty string as default contextClassName', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee9() { var consumerFn; return _regenerator["default"].wrap(function _callee9$(_context9) { while (1) switch (_context9.prev = _context9.next) { case 0: consumerFn = vi.fn(); render(/*#__PURE__*/_react["default"].createElement(_WixDesignSystemProvider["default"], { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 150, columnNumber: 11 } }, /*#__PURE__*/_react["default"].createElement(_context1.WixDesignSystemContext.Consumer, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 151, columnNumber: 13 } }, consumerFn))); expect(consumerFn).toHaveBeenCalledWith(expect.objectContaining({ contextClassName: '' })); case 3: case "end": return _context9.stop(); } }, _callee9); }))); }); } });