@kiwicom/smart-faq
Version:
66 lines (56 loc) • 2.5 kB
JavaScript
require("core-js/modules/es.array.find");
require("core-js/modules/es.object.get-own-property-descriptor");
var React = _interopRequireWildcard(require("react"));
var _reactRouter = require("react-router");
var _enzyme = require("enzyme");
var _SearchAutocomplete = _interopRequireDefault(require("../SearchAutocomplete"));
var _PageVariant = _interopRequireDefault(require("../../../SmartFAQ/context/PageVariant"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }
/**
* @jest-environment node
* @flow
*/
jest.mock('react-relay', function () {
return {
createFragmentContainer: function createFragmentContainer(component) {
return component;
}
};
});
var noSearchTranslationKey = 'no_search_results';
describe('SearchAutocomplete', function () {
it('should list faqs as result for search', function () {
var faqs = [{
id: '42'
}, {
id: '1984'
}];
var wrapper = (0, _enzyme.render)(React.createElement(_reactRouter.MemoryRouter, null, React.createElement(_PageVariant.default.Provider, {
value: {
variant: 'fullPage',
urlPrefix: '/help'
}
}, React.createElement(_SearchAutocomplete.default, {
faqs: faqs,
urlSearchParam: null
}))));
expect(wrapper.find('[data-test="autocompleteResult"]')).toHaveLength(2);
expect(wrapper.text()).not.toContain(noSearchTranslationKey);
});
it('should display message when no results were found', function () {
var faqs = [];
var wrapper = (0, _enzyme.render)(React.createElement(_reactRouter.MemoryRouter, null, React.createElement(_PageVariant.default.Provider, {
value: {
variant: 'fullPage',
urlPrefix: '/help'
}
}, React.createElement(_SearchAutocomplete.default, {
faqs: faqs,
urlSearchParam: null
}))));
expect(wrapper.text()).toContain(noSearchTranslationKey);
expect(wrapper.find('[data-test="autocompleteResult"]')).toHaveLength(0);
});
});
;