UNPKG

@gravity-ui/data-source

Version:
47 lines (46 loc) 1.76 kB
"use strict"; var _react = _interopRequireDefault(require("react")); var _react2 = require("@testing-library/react"); var _DataManagerContext = require("../DataManagerContext"); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } describe('useDataManager', function () { it('should return dataManager from context', function () { var mockDataManager = { normalizer: undefined, optimisticUpdate: jest.fn(), invalidateData: jest.fn(), invalidateTag: jest.fn(), invalidateTags: jest.fn(), invalidateSource: jest.fn(), resetSource: jest.fn(), invalidateParams: jest.fn(), resetParams: jest.fn(), invalidateSourceTags: jest.fn() }; var wrapper = function wrapper(_ref) { var children = _ref.children; return /*#__PURE__*/(0, _jsxRuntime.jsx)(_DataManagerContext.DataManagerContext.Provider, { value: mockDataManager, children: children }); }; var _renderHook = (0, _react2.renderHook)(function () { return (0, _DataManagerContext.useDataManager)(); }, { wrapper: wrapper }), result = _renderHook.result; expect(result.current).toBe(mockDataManager); }); it('should throw an error when dataManager is not provided', function () { var consoleSpy = jest.spyOn(console, 'error').mockImplementation(); expect(function () { (0, _react2.renderHook)(function () { return (0, _DataManagerContext.useDataManager)(); }); }).toThrow('DataManager is not provided by context. Use DataManagerContext.Provider to do it'); consoleSpy.mockRestore(); }); }); // #sourceMappingURL=DataManagerContext.test.js.map