UNPKG

@kiwicom/smart-faq

Version:

90 lines (79 loc) 2.98 kB
"use strict"; require("core-js/modules/es.array.find"); require("core-js/modules/es.object.assign"); var _react = _interopRequireDefault(require("react")); var _enzyme = require("enzyme"); var _reactRouterDom = require("react-router-dom"); var _styledComponents = require("styled-components"); var _User = require("../../../context/User"); var _Header = require("../Header"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } describe('ContentHeader', function () { var props = { renderOnlyLoggedOut: false, onLogin: jest.fn(), location: { pathname: '/content', search: '', hash: '' }, match: { params: { categoryId: '21' }, isExact: true, path: '', url: '' } }; var theme = { orbit: { colorIconPrimary: '#46515e' } }; var user = { brand: 'kiwicom', user: { id: '1', email: 'joe.doe@example.com', firstname: 'Joe', lastname: 'Doe' }, loginToken: 'AAAABBBBCCCC', simpleToken: null, kwAuthToken: null, onLogin: jest.fn(), onLogout: jest.fn() }; it('should render loggedIn user header', function () { var wrapper = (0, _enzyme.render)(_react.default.createElement(_User.UserContext.Provider, { value: user }, _react.default.createElement(_reactRouterDom.MemoryRouter, null, _react.default.createElement(_Header.RawContentHeader, props)))); expect(wrapper.find('.loggedIn')).toHaveLength(1); expect(wrapper).toMatchSnapshot(); }); it('should render loggedOut user header', function () { var wrapper = (0, _enzyme.render)(_react.default.createElement(_reactRouterDom.MemoryRouter, null, _react.default.createElement(_styledComponents.ThemeProvider, { theme: theme }, _react.default.createElement(_Header.RawContentHeader, props)))); expect(wrapper.find('.backButton').text()).toEqual('smartfaq.back_button.back'); expect(wrapper.find('.loggedOut')).toHaveLength(1); expect(wrapper).toMatchSnapshot(); }); it('should render without SignIn on Home page without booking', function () { var match = { params: {}, isExact: true, path: '', url: '' }; var wrapper = (0, _enzyme.render)(_react.default.createElement(_reactRouterDom.MemoryRouter, null, _react.default.createElement(_styledComponents.ThemeProvider, { theme: theme }, _react.default.createElement(_Header.RawContentHeader, _extends({}, props, { renderOnlyLoggedOut: true, match: match }))))); expect(wrapper.find('.signInOrBack').children()).toHaveLength(0); }); });