@gravity-ui/data-source 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/core/index.d.ts +3 -2
- package/build/cjs/core/index.js +7 -0
- package/build/cjs/core/index.js.map +1 -1
- package/build/cjs/core/types/{DataManger.js → DataManager.js} +1 -1
- package/build/cjs/core/types/DataManager.js.map +1 -0
- package/build/cjs/core/types/DataSource.d.ts +15 -19
- package/build/cjs/core/types/DataSource.js.map +1 -1
- package/build/cjs/core/utils/__tests__/composeFullKey.test.js +34 -0
- package/build/cjs/core/utils/__tests__/composeFullKey.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/composeKey.test.js +32 -0
- package/build/cjs/core/utils/__tests__/composeKey.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/getError.test.js +31 -0
- package/build/cjs/core/utils/__tests__/getError.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/getStatus.test.js +49 -0
- package/build/cjs/core/utils/__tests__/getStatus.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/hasTag.test.js +31 -0
- package/build/cjs/core/utils/__tests__/hasTag.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/mergeStatuses.test.js +25 -0
- package/build/cjs/core/utils/__tests__/mergeStatuses.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/skipContext.test.js +70 -0
- package/build/cjs/core/utils/__tests__/skipContext.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/withCancellation.test.js +106 -0
- package/build/cjs/core/utils/__tests__/withCancellation.test.js.map +1 -0
- package/build/cjs/core/utils/__tests__/withCatch.test.js +208 -0
- package/build/cjs/core/utils/__tests__/withCatch.test.js.map +1 -0
- package/build/cjs/core/utils/hasTag.js +1 -1
- package/build/cjs/core/utils/hasTag.js.map +1 -1
- package/build/cjs/core/utils/withCatch.d.ts +26 -0
- package/build/cjs/core/utils/withCatch.js +37 -0
- package/build/cjs/core/utils/withCatch.js.map +1 -0
- package/build/cjs/react/DataManagerContext.js +1 -1
- package/build/cjs/react/DataManagerContext.js.map +1 -1
- package/build/cjs/react/__tests__/DataManagerContext.test.js +46 -0
- package/build/cjs/react/__tests__/DataManagerContext.test.js.map +1 -0
- package/build/cjs/react/__tests__/withDataManager.test.js +58 -0
- package/build/cjs/react/__tests__/withDataManager.test.js.map +1 -0
- package/build/cjs/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js +187 -0
- package/build/cjs/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js.map +1 -0
- package/build/cjs/react/components/DataLoader/__tests__/DataLoader.test.js +119 -0
- package/build/cjs/react/components/DataLoader/__tests__/DataLoader.test.js.map +1 -0
- package/build/cjs/react/withDataManager.d.ts +1 -1
- package/build/cjs/react/withDataManager.js +3 -3
- package/build/cjs/react/withDataManager.js.map +1 -1
- package/build/cjs/react-query/ClientDataManager.d.ts +1 -1
- package/build/cjs/react-query/ClientDataManager.js +6 -6
- package/build/cjs/react-query/ClientDataManager.js.map +1 -1
- package/build/cjs/react-query/constants.d.ts +2 -0
- package/build/cjs/react-query/constants.js +9 -0
- package/build/cjs/react-query/constants.js.map +1 -0
- package/build/cjs/react-query/hooks/__tests__/useQueryContext.test.js +55 -0
- package/build/cjs/react-query/hooks/__tests__/useQueryContext.test.js.map +1 -0
- package/build/cjs/react-query/hooks/__tests__/useQueryData.test.js +97 -0
- package/build/cjs/react-query/hooks/__tests__/useQueryData.test.js.map +1 -0
- package/build/cjs/react-query/hooks/__tests__/useQueryResponses.test.js +77 -0
- package/build/cjs/react-query/hooks/__tests__/useQueryResponses.test.js.map +1 -0
- package/build/cjs/react-query/hooks/__tests__/useRefetchAll.test.js +79 -0
- package/build/cjs/react-query/hooks/__tests__/useRefetchAll.test.js.map +1 -0
- package/build/cjs/react-query/hooks/__tests__/useRefetchErrored.test.js +117 -0
- package/build/cjs/react-query/hooks/__tests__/useRefetchErrored.test.js.map +1 -0
- package/build/cjs/react-query/hooks/__tests__/useRefetchInterval.test.js +156 -0
- package/build/cjs/react-query/hooks/__tests__/useRefetchInterval.test.js.map +1 -0
- package/build/cjs/react-query/hooks/useRefetchInterval.d.ts +1 -1
- package/build/cjs/react-query/impl/infinite/factory.d.ts +1 -1
- package/build/cjs/react-query/impl/infinite/factory.js.map +1 -1
- package/build/cjs/react-query/impl/infinite/types.d.ts +7 -7
- package/build/cjs/react-query/impl/infinite/types.js.map +1 -1
- package/build/cjs/react-query/impl/infinite/utils.js +11 -22
- package/build/cjs/react-query/impl/infinite/utils.js.map +1 -1
- package/build/cjs/react-query/impl/plain/factory.d.ts +1 -1
- package/build/cjs/react-query/impl/plain/factory.js.map +1 -1
- package/build/cjs/react-query/impl/plain/types.d.ts +4 -4
- package/build/cjs/react-query/impl/plain/types.js.map +1 -1
- package/build/cjs/react-query/impl/plain/utils.js +12 -23
- package/build/cjs/react-query/impl/plain/utils.js.map +1 -1
- package/build/cjs/react-query/utils/__tests__/formatNullableValue.test.js +27 -0
- package/build/cjs/react-query/utils/__tests__/formatNullableValue.test.js.map +1 -0
- package/build/cjs/react-query/utils/__tests__/getProgressiveRefetch.test.js +76 -0
- package/build/cjs/react-query/utils/__tests__/getProgressiveRefetch.test.js.map +1 -0
- package/build/cjs/react-query/utils/__tests__/normalizeStatus.test.js +30 -0
- package/build/cjs/react-query/utils/__tests__/normalizeStatus.test.js.map +1 -0
- package/build/cjs/react-query/utils/__tests__/notReachable.test.js +35 -0
- package/build/cjs/react-query/utils/__tests__/notReachable.test.js.map +1 -0
- package/build/cjs/react-query/utils/__tests__/parseNullableValue.test.js +27 -0
- package/build/cjs/react-query/utils/__tests__/parseNullableValue.test.js.map +1 -0
- package/build/cjs/react-query/utils/formatNullableValue.d.ts +2 -0
- package/build/cjs/react-query/utils/formatNullableValue.js +17 -0
- package/build/cjs/react-query/utils/formatNullableValue.js.map +1 -0
- package/build/cjs/react-query/utils/getProgressiveRefetch.d.ts +2 -2
- package/build/cjs/react-query/utils/parseNullableValue.d.ts +2 -0
- package/build/cjs/react-query/utils/parseNullableValue.js +17 -0
- package/build/cjs/react-query/utils/parseNullableValue.js.map +1 -0
- package/build/cjs/setupTests.d.ts +1 -0
- package/build/cjs/setupTests.js +4 -0
- package/build/cjs/setupTests.js.map +1 -0
- package/build/esm/core/index.d.ts +3 -2
- package/build/esm/core/index.js +1 -0
- package/build/esm/core/index.js.map +1 -1
- package/build/esm/core/types/DataManager.js +2 -0
- package/build/esm/core/types/DataManager.js.map +1 -0
- package/build/esm/core/types/DataSource.d.ts +15 -19
- package/build/esm/core/types/DataSource.js.map +1 -1
- package/build/esm/core/utils/__tests__/composeFullKey.test.js +32 -0
- package/build/esm/core/utils/__tests__/composeFullKey.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/composeKey.test.js +30 -0
- package/build/esm/core/utils/__tests__/composeKey.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/getError.test.js +29 -0
- package/build/esm/core/utils/__tests__/getError.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/getStatus.test.js +47 -0
- package/build/esm/core/utils/__tests__/getStatus.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/hasTag.test.js +29 -0
- package/build/esm/core/utils/__tests__/hasTag.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/mergeStatuses.test.js +23 -0
- package/build/esm/core/utils/__tests__/mergeStatuses.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/skipContext.test.js +67 -0
- package/build/esm/core/utils/__tests__/skipContext.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/withCancellation.test.js +104 -0
- package/build/esm/core/utils/__tests__/withCancellation.test.js.map +1 -0
- package/build/esm/core/utils/__tests__/withCatch.test.js +205 -0
- package/build/esm/core/utils/__tests__/withCatch.test.js.map +1 -0
- package/build/esm/core/utils/hasTag.js +1 -1
- package/build/esm/core/utils/hasTag.js.map +1 -1
- package/build/esm/core/utils/withCatch.d.ts +26 -0
- package/build/esm/core/utils/withCatch.js +31 -0
- package/build/esm/core/utils/withCatch.js.map +1 -0
- package/build/esm/react/DataManagerContext.js +1 -1
- package/build/esm/react/DataManagerContext.js.map +1 -1
- package/build/esm/react/__tests__/DataManagerContext.test.js +43 -0
- package/build/esm/react/__tests__/DataManagerContext.test.js.map +1 -0
- package/build/esm/react/__tests__/withDataManager.test.js +55 -0
- package/build/esm/react/__tests__/withDataManager.test.js.map +1 -0
- package/build/esm/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js +184 -0
- package/build/esm/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js.map +1 -0
- package/build/esm/react/components/DataLoader/__tests__/DataLoader.test.js +116 -0
- package/build/esm/react/components/DataLoader/__tests__/DataLoader.test.js.map +1 -0
- package/build/esm/react/withDataManager.d.ts +1 -1
- package/build/esm/react/withDataManager.js +3 -3
- package/build/esm/react/withDataManager.js.map +1 -1
- package/build/esm/react-query/ClientDataManager.d.ts +1 -1
- package/build/esm/react-query/ClientDataManager.js +6 -6
- package/build/esm/react-query/ClientDataManager.js.map +1 -1
- package/build/esm/react-query/constants.d.ts +2 -0
- package/build/esm/react-query/constants.js +3 -0
- package/build/esm/react-query/constants.js.map +1 -0
- package/build/esm/react-query/hooks/__tests__/useQueryContext.test.js +52 -0
- package/build/esm/react-query/hooks/__tests__/useQueryContext.test.js.map +1 -0
- package/build/esm/react-query/hooks/__tests__/useQueryData.test.js +95 -0
- package/build/esm/react-query/hooks/__tests__/useQueryData.test.js.map +1 -0
- package/build/esm/react-query/hooks/__tests__/useQueryResponses.test.js +74 -0
- package/build/esm/react-query/hooks/__tests__/useQueryResponses.test.js.map +1 -0
- package/build/esm/react-query/hooks/__tests__/useRefetchAll.test.js +77 -0
- package/build/esm/react-query/hooks/__tests__/useRefetchAll.test.js.map +1 -0
- package/build/esm/react-query/hooks/__tests__/useRefetchErrored.test.js +115 -0
- package/build/esm/react-query/hooks/__tests__/useRefetchErrored.test.js.map +1 -0
- package/build/esm/react-query/hooks/__tests__/useRefetchInterval.test.js +154 -0
- package/build/esm/react-query/hooks/__tests__/useRefetchInterval.test.js.map +1 -0
- package/build/esm/react-query/hooks/useRefetchInterval.d.ts +1 -1
- package/build/esm/react-query/impl/infinite/factory.d.ts +1 -1
- package/build/esm/react-query/impl/infinite/factory.js.map +1 -1
- package/build/esm/react-query/impl/infinite/types.d.ts +7 -7
- package/build/esm/react-query/impl/infinite/types.js.map +1 -1
- package/build/esm/react-query/impl/infinite/utils.js +9 -20
- package/build/esm/react-query/impl/infinite/utils.js.map +1 -1
- package/build/esm/react-query/impl/plain/factory.d.ts +1 -1
- package/build/esm/react-query/impl/plain/factory.js.map +1 -1
- package/build/esm/react-query/impl/plain/types.d.ts +4 -4
- package/build/esm/react-query/impl/plain/types.js.map +1 -1
- package/build/esm/react-query/impl/plain/utils.js +10 -21
- package/build/esm/react-query/impl/plain/utils.js.map +1 -1
- package/build/esm/react-query/utils/__tests__/formatNullableValue.test.js +25 -0
- package/build/esm/react-query/utils/__tests__/formatNullableValue.test.js.map +1 -0
- package/build/esm/react-query/utils/__tests__/getProgressiveRefetch.test.js +74 -0
- package/build/esm/react-query/utils/__tests__/getProgressiveRefetch.test.js.map +1 -0
- package/build/esm/react-query/utils/__tests__/normalizeStatus.test.js +28 -0
- package/build/esm/react-query/utils/__tests__/normalizeStatus.test.js.map +1 -0
- package/build/esm/react-query/utils/__tests__/notReachable.test.js +33 -0
- package/build/esm/react-query/utils/__tests__/notReachable.test.js.map +1 -0
- package/build/esm/react-query/utils/__tests__/parseNullableValue.test.js +25 -0
- package/build/esm/react-query/utils/__tests__/parseNullableValue.test.js.map +1 -0
- package/build/esm/react-query/utils/formatNullableValue.d.ts +2 -0
- package/build/esm/react-query/utils/formatNullableValue.js +11 -0
- package/build/esm/react-query/utils/formatNullableValue.js.map +1 -0
- package/build/esm/react-query/utils/getProgressiveRefetch.d.ts +2 -2
- package/build/esm/react-query/utils/parseNullableValue.d.ts +2 -0
- package/build/esm/react-query/utils/parseNullableValue.js +11 -0
- package/build/esm/react-query/utils/parseNullableValue.js.map +1 -0
- package/build/esm/setupTests.d.ts +1 -0
- package/build/esm/setupTests.js +2 -0
- package/build/esm/setupTests.js.map +1 -0
- package/package.json +17 -13
- package/build/cjs/core/types/DataManger.js.map +0 -1
- package/build/cjs/react-query/impl/utils.d.ts +0 -4
- package/build/cjs/react-query/impl/utils.js +0 -27
- package/build/cjs/react-query/impl/utils.js.map +0 -1
- package/build/esm/core/types/DataManger.js +0 -2
- package/build/esm/core/types/DataManger.js.map +0 -1
- package/build/esm/react-query/impl/utils.d.ts +0 -4
- package/build/esm/react-query/impl/utils.js +0 -21
- package/build/esm/react-query/impl/utils.js.map +0 -1
- /package/build/cjs/core/types/{DataManger.d.ts → DataManager.d.ts} +0 -0
- /package/build/esm/core/types/{DataManger.d.ts → DataManager.d.ts} +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _reactQuery = require("@tanstack/react-query");
|
|
4
|
+
var _react = require("@testing-library/react");
|
|
5
|
+
var _hooks = require("../../impl/infinite/hooks");
|
|
6
|
+
var _hooks2 = require("../../impl/plain/hooks");
|
|
7
|
+
var _notReachable = require("../../utils/notReachable");
|
|
8
|
+
var _useQueryContext = require("../useQueryContext");
|
|
9
|
+
var _useQueryData = require("../useQueryData");
|
|
10
|
+
jest.mock('../useQueryContext');
|
|
11
|
+
jest.mock('../../impl/plain/hooks');
|
|
12
|
+
jest.mock('../../impl/infinite/hooks');
|
|
13
|
+
jest.mock('../../utils/notReachable');
|
|
14
|
+
describe('useQueryData', function () {
|
|
15
|
+
var mockQueryClient = new _reactQuery.QueryClient();
|
|
16
|
+
var mockContext = {
|
|
17
|
+
queryClient: mockQueryClient
|
|
18
|
+
};
|
|
19
|
+
var mockPlainState = {
|
|
20
|
+
status: 'success',
|
|
21
|
+
data: 'plain data'
|
|
22
|
+
};
|
|
23
|
+
var mockInfiniteState = {
|
|
24
|
+
status: 'success',
|
|
25
|
+
data: ['infinite data']
|
|
26
|
+
};
|
|
27
|
+
beforeEach(function () {
|
|
28
|
+
jest.clearAllMocks();
|
|
29
|
+
_useQueryContext.useQueryContext.mockReturnValue(mockContext);
|
|
30
|
+
_hooks2.usePlainQueryData.mockReturnValue(mockPlainState);
|
|
31
|
+
_hooks.useInfiniteQueryData.mockReturnValue(mockInfiniteState);
|
|
32
|
+
_notReachable.notReachable.mockReturnValue('not reachable');
|
|
33
|
+
});
|
|
34
|
+
it('should call usePlainQueryData for plain data source', function () {
|
|
35
|
+
var dataSource = {
|
|
36
|
+
type: 'plain',
|
|
37
|
+
name: 'test',
|
|
38
|
+
fetch: jest.fn()
|
|
39
|
+
};
|
|
40
|
+
var params = {
|
|
41
|
+
id: 1
|
|
42
|
+
};
|
|
43
|
+
var options = {
|
|
44
|
+
refetchInterval: 1000
|
|
45
|
+
};
|
|
46
|
+
var _renderHook = (0, _react.renderHook)(function () {
|
|
47
|
+
return (0, _useQueryData.useQueryData)(dataSource, params, options);
|
|
48
|
+
}),
|
|
49
|
+
result = _renderHook.result;
|
|
50
|
+
expect(_useQueryContext.useQueryContext).toHaveBeenCalled();
|
|
51
|
+
expect(_hooks2.usePlainQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);
|
|
52
|
+
expect(_hooks.useInfiniteQueryData).not.toHaveBeenCalled();
|
|
53
|
+
expect(result.current).toBe(mockPlainState);
|
|
54
|
+
});
|
|
55
|
+
it('should call useInfiniteQueryData for infinite data source', function () {
|
|
56
|
+
var dataSource = {
|
|
57
|
+
type: 'infinite',
|
|
58
|
+
name: 'test',
|
|
59
|
+
fetch: jest.fn(),
|
|
60
|
+
next: jest.fn()
|
|
61
|
+
};
|
|
62
|
+
var params = {
|
|
63
|
+
id: 1
|
|
64
|
+
};
|
|
65
|
+
var options = {
|
|
66
|
+
refetchInterval: 1000
|
|
67
|
+
};
|
|
68
|
+
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
69
|
+
return (0, _useQueryData.useQueryData)(dataSource, params, options);
|
|
70
|
+
}),
|
|
71
|
+
result = _renderHook2.result;
|
|
72
|
+
expect(_useQueryContext.useQueryContext).toHaveBeenCalled();
|
|
73
|
+
expect(_hooks.useInfiniteQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);
|
|
74
|
+
expect(_hooks2.usePlainQueryData).not.toHaveBeenCalled();
|
|
75
|
+
expect(result.current).toBe(mockInfiniteState);
|
|
76
|
+
});
|
|
77
|
+
it('should call notReachable for unknown data source type', function () {
|
|
78
|
+
var dataSource = {
|
|
79
|
+
type: 'unknown',
|
|
80
|
+
name: 'test',
|
|
81
|
+
fetch: jest.fn()
|
|
82
|
+
};
|
|
83
|
+
var params = {
|
|
84
|
+
id: 1
|
|
85
|
+
};
|
|
86
|
+
_notReachable.notReachable.mockImplementation(function () {
|
|
87
|
+
return 'not reachable';
|
|
88
|
+
});
|
|
89
|
+
(0, _react.renderHook)(function () {
|
|
90
|
+
return (0, _useQueryData.useQueryData)(dataSource, params);
|
|
91
|
+
});
|
|
92
|
+
expect(_hooks2.usePlainQueryData).not.toHaveBeenCalled();
|
|
93
|
+
expect(_hooks.useInfiniteQueryData).not.toHaveBeenCalled();
|
|
94
|
+
expect(_notReachable.notReachable).toHaveBeenCalledWith('unknown', expect.any(String));
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
// #sourceMappingURL=useQueryData.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactQuery","require","_react","_hooks","_hooks2","_notReachable","_useQueryContext","_useQueryData","jest","mock","describe","mockQueryClient","QueryClient","mockContext","queryClient","mockPlainState","status","data","mockInfiniteState","beforeEach","clearAllMocks","useQueryContext","mockReturnValue","usePlainQueryData","useInfiniteQueryData","notReachable","it","dataSource","type","name","fetch","fn","params","id","options","refetchInterval","_renderHook","renderHook","useQueryData","result","expect","toHaveBeenCalled","toHaveBeenCalledWith","not","current","toBe","next","_renderHook2","mockImplementation","any","String"],"sources":["useQueryData.test.ts"],"sourcesContent":["import {QueryClient} from '@tanstack/react-query';\nimport {renderHook} from '@testing-library/react';\n\nimport {useInfiniteQueryData} from '../../impl/infinite/hooks';\nimport type {AnyInfiniteQueryDataSource} from '../../impl/infinite/types';\nimport {usePlainQueryData} from '../../impl/plain/hooks';\nimport type {AnyPlainQueryDataSource} from '../../impl/plain/types';\nimport type {AnyQueryDataSource} from '../../types/base';\nimport {notReachable} from '../../utils/notReachable';\nimport {useQueryContext} from '../useQueryContext';\nimport {useQueryData} from '../useQueryData';\n\njest.mock('../useQueryContext');\njest.mock('../../impl/plain/hooks');\njest.mock('../../impl/infinite/hooks');\njest.mock('../../utils/notReachable');\n\ndescribe('useQueryData', () => {\n const mockQueryClient = new QueryClient();\n const mockContext = {queryClient: mockQueryClient};\n const mockPlainState = {status: 'success', data: 'plain data'};\n const mockInfiniteState = {status: 'success', data: ['infinite data']};\n\n beforeEach(() => {\n jest.clearAllMocks();\n\n (useQueryContext as jest.Mock).mockReturnValue(mockContext);\n (usePlainQueryData as jest.Mock).mockReturnValue(mockPlainState);\n (useInfiniteQueryData as jest.Mock).mockReturnValue(mockInfiniteState);\n (notReachable as unknown as jest.Mock).mockReturnValue('not reachable');\n });\n\n it('should call usePlainQueryData for plain data source', () => {\n const dataSource: AnyPlainQueryDataSource = {\n type: 'plain',\n name: 'test',\n fetch: jest.fn(),\n };\n const params = {id: 1};\n const options = {refetchInterval: 1000};\n\n const {result} = renderHook(() => useQueryData(dataSource, params, options));\n\n expect(useQueryContext).toHaveBeenCalled();\n expect(usePlainQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);\n expect(useInfiniteQueryData).not.toHaveBeenCalled();\n expect(result.current).toBe(mockPlainState);\n });\n\n it('should call useInfiniteQueryData for infinite data source', () => {\n const dataSource: AnyInfiniteQueryDataSource = {\n type: 'infinite',\n name: 'test',\n fetch: jest.fn(),\n next: jest.fn(),\n };\n const params = {id: 1};\n const options = {refetchInterval: 1000};\n\n const {result} = renderHook(() => useQueryData(dataSource, params, options));\n\n expect(useQueryContext).toHaveBeenCalled();\n expect(useInfiniteQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);\n expect(usePlainQueryData).not.toHaveBeenCalled();\n expect(result.current).toBe(mockInfiniteState);\n });\n\n it('should call notReachable for unknown data source type', () => {\n const dataSource = {\n type: 'unknown',\n name: 'test',\n fetch: jest.fn(),\n } as unknown as AnyQueryDataSource;\n const params = {id: 1};\n\n (notReachable as unknown as jest.Mock).mockImplementation(() => {\n return 'not reachable';\n });\n\n renderHook(() => useQueryData(dataSource, params));\n\n expect(usePlainQueryData).not.toHaveBeenCalled();\n expect(useInfiniteQueryData).not.toHaveBeenCalled();\n expect(notReachable).toHaveBeenCalledWith('unknown', expect.any(String));\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
4
|
+
var _react = require("@testing-library/react");
|
|
5
|
+
var _core = require("../../../core");
|
|
6
|
+
var _useQueryResponses = require("../useQueryResponses");
|
|
7
|
+
var _useRefetchAll = require("../useRefetchAll");
|
|
8
|
+
var _useRefetchErrored = require("../useRefetchErrored");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
jest.mock('../useRefetchAll');
|
|
11
|
+
jest.mock('../useRefetchErrored');
|
|
12
|
+
jest.mock('../../../core', function () {
|
|
13
|
+
var originalModule = jest.requireActual('../../../core');
|
|
14
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, originalModule), {}, {
|
|
15
|
+
getStatus: jest.fn(),
|
|
16
|
+
getError: jest.fn()
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
describe('useQueryResponses', function () {
|
|
20
|
+
var mockRefetchAll = jest.fn();
|
|
21
|
+
var mockRefetchErrored = jest.fn();
|
|
22
|
+
beforeEach(function () {
|
|
23
|
+
jest.clearAllMocks();
|
|
24
|
+
_useRefetchAll.useRefetchAll.mockReturnValue(mockRefetchAll);
|
|
25
|
+
_useRefetchErrored.useRefetchErrored.mockReturnValue(mockRefetchErrored);
|
|
26
|
+
_core.getStatus.mockReturnValue('success');
|
|
27
|
+
_core.getError.mockReturnValue(null);
|
|
28
|
+
});
|
|
29
|
+
it('should return combined status, error, and refetch functions', function () {
|
|
30
|
+
var responses = [{
|
|
31
|
+
status: 'loading',
|
|
32
|
+
error: null,
|
|
33
|
+
refetch: jest.fn()
|
|
34
|
+
}, {
|
|
35
|
+
status: 'success',
|
|
36
|
+
error: null,
|
|
37
|
+
refetch: jest.fn()
|
|
38
|
+
}, {
|
|
39
|
+
status: 'error',
|
|
40
|
+
error: {
|
|
41
|
+
message: 'Error'
|
|
42
|
+
},
|
|
43
|
+
refetch: jest.fn()
|
|
44
|
+
}];
|
|
45
|
+
var _renderHook = (0, _react.renderHook)(function () {
|
|
46
|
+
return (0, _useQueryResponses.useQueryResponses)(responses);
|
|
47
|
+
}),
|
|
48
|
+
result = _renderHook.result;
|
|
49
|
+
expect(_core.getStatus).toHaveBeenCalledWith(responses);
|
|
50
|
+
expect(_core.getError).toHaveBeenCalledWith(responses);
|
|
51
|
+
expect(_useRefetchAll.useRefetchAll).toHaveBeenCalledWith(responses);
|
|
52
|
+
expect(_useRefetchErrored.useRefetchErrored).toHaveBeenCalledWith(responses);
|
|
53
|
+
expect(result.current).toEqual({
|
|
54
|
+
status: 'success',
|
|
55
|
+
error: null,
|
|
56
|
+
refetch: mockRefetchAll,
|
|
57
|
+
refetchErrored: mockRefetchErrored
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
it('should handle empty responses array', function () {
|
|
61
|
+
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
62
|
+
return (0, _useQueryResponses.useQueryResponses)([]);
|
|
63
|
+
}),
|
|
64
|
+
result = _renderHook2.result;
|
|
65
|
+
expect(_core.getStatus).toHaveBeenCalledWith([]);
|
|
66
|
+
expect(_core.getError).toHaveBeenCalledWith([]);
|
|
67
|
+
expect(_useRefetchAll.useRefetchAll).toHaveBeenCalledWith([]);
|
|
68
|
+
expect(_useRefetchErrored.useRefetchErrored).toHaveBeenCalledWith([]);
|
|
69
|
+
expect(result.current).toEqual({
|
|
70
|
+
status: 'success',
|
|
71
|
+
error: null,
|
|
72
|
+
refetch: mockRefetchAll,
|
|
73
|
+
refetchErrored: mockRefetchErrored
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
// #sourceMappingURL=useQueryResponses.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_core","_useQueryResponses","_useRefetchAll","_useRefetchErrored","_interopRequireDefault","e","__esModule","default","jest","mock","originalModule","requireActual","_objectSpread","getStatus","fn","getError","describe","mockRefetchAll","mockRefetchErrored","beforeEach","clearAllMocks","useRefetchAll","mockReturnValue","useRefetchErrored","it","responses","status","error","refetch","message","_renderHook","renderHook","useQueryResponses","result","expect","toHaveBeenCalledWith","current","toEqual","refetchErrored","_renderHook2"],"sources":["useQueryResponses.test.ts"],"sourcesContent":["import {renderHook} from '@testing-library/react';\n\nimport {getError, getStatus} from '../../../core';\nimport type {DataLoaderStatus} from '../../../core/types/DataLoaderStatus';\nimport {useQueryResponses} from '../useQueryResponses';\nimport {useRefetchAll} from '../useRefetchAll';\nimport {useRefetchErrored} from '../useRefetchErrored';\n\njest.mock('../useRefetchAll');\njest.mock('../useRefetchErrored');\njest.mock('../../../core', () => {\n const originalModule = jest.requireActual('../../../core');\n return {\n ...originalModule,\n getStatus: jest.fn(),\n getError: jest.fn(),\n };\n});\n\ndescribe('useQueryResponses', () => {\n const mockRefetchAll = jest.fn();\n const mockRefetchErrored = jest.fn();\n\n beforeEach(() => {\n jest.clearAllMocks();\n\n (useRefetchAll as jest.Mock).mockReturnValue(mockRefetchAll);\n (useRefetchErrored as jest.Mock).mockReturnValue(mockRefetchErrored);\n (getStatus as jest.Mock).mockReturnValue('success');\n (getError as jest.Mock).mockReturnValue(null);\n });\n\n it('should return combined status, error, and refetch functions', () => {\n const responses = [\n {status: 'loading' as DataLoaderStatus, error: null, refetch: jest.fn()},\n {status: 'success' as DataLoaderStatus, error: null, refetch: jest.fn()},\n {status: 'error' as DataLoaderStatus, error: {message: 'Error'}, refetch: jest.fn()},\n ];\n\n const {result} = renderHook(() => useQueryResponses(responses));\n\n expect(getStatus).toHaveBeenCalledWith(responses);\n expect(getError).toHaveBeenCalledWith(responses);\n expect(useRefetchAll).toHaveBeenCalledWith(responses);\n expect(useRefetchErrored).toHaveBeenCalledWith(responses);\n expect(result.current).toEqual({\n status: 'success',\n error: null,\n refetch: mockRefetchAll,\n refetchErrored: mockRefetchErrored,\n });\n });\n\n it('should handle empty responses array', () => {\n const {result} = renderHook(() => useQueryResponses([]));\n\n expect(getStatus).toHaveBeenCalledWith([]);\n expect(getError).toHaveBeenCalledWith([]);\n expect(useRefetchAll).toHaveBeenCalledWith([]);\n expect(useRefetchErrored).toHaveBeenCalledWith([]);\n expect(result.current).toEqual({\n status: 'success',\n error: null,\n refetch: mockRefetchAll,\n refetchErrored: mockRefetchErrored,\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
4
|
+
var _useRefetchAll = require("../useRefetchAll");
|
|
5
|
+
describe('useRefetchAll', function () {
|
|
6
|
+
it('should return a function that calls refetch on all states', function () {
|
|
7
|
+
var refetch1 = jest.fn();
|
|
8
|
+
var refetch2 = jest.fn();
|
|
9
|
+
var refetch3 = jest.fn();
|
|
10
|
+
var states = [{
|
|
11
|
+
refetch: refetch1
|
|
12
|
+
}, {
|
|
13
|
+
refetch: refetch2
|
|
14
|
+
}, {
|
|
15
|
+
refetch: refetch3
|
|
16
|
+
}];
|
|
17
|
+
var _renderHook = (0, _react.renderHook)(function () {
|
|
18
|
+
return (0, _useRefetchAll.useRefetchAll)(states);
|
|
19
|
+
}),
|
|
20
|
+
result = _renderHook.result;
|
|
21
|
+
expect(result.current).toEqual(expect.any(Function));
|
|
22
|
+
(0, _react.act)(function () {
|
|
23
|
+
result.current();
|
|
24
|
+
});
|
|
25
|
+
expect(refetch1).toHaveBeenCalledTimes(1);
|
|
26
|
+
expect(refetch2).toHaveBeenCalledTimes(1);
|
|
27
|
+
expect(refetch3).toHaveBeenCalledTimes(1);
|
|
28
|
+
});
|
|
29
|
+
it('should handle empty states array', function () {
|
|
30
|
+
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
31
|
+
return (0, _useRefetchAll.useRefetchAll)([]);
|
|
32
|
+
}),
|
|
33
|
+
result = _renderHook2.result;
|
|
34
|
+
(0, _react.act)(function () {
|
|
35
|
+
result.current();
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
it('should memoize the refetch function when dependencies do not change', function () {
|
|
39
|
+
var refetch1 = jest.fn();
|
|
40
|
+
var refetch2 = jest.fn();
|
|
41
|
+
var states = [{
|
|
42
|
+
refetch: refetch1
|
|
43
|
+
}, {
|
|
44
|
+
refetch: refetch2
|
|
45
|
+
}];
|
|
46
|
+
var _renderHook3 = (0, _react.renderHook)(function () {
|
|
47
|
+
return (0, _useRefetchAll.useRefetchAll)(states);
|
|
48
|
+
}),
|
|
49
|
+
result = _renderHook3.result,
|
|
50
|
+
rerender = _renderHook3.rerender;
|
|
51
|
+
var firstRefetchAll = result.current;
|
|
52
|
+
rerender();
|
|
53
|
+
expect(result.current).toBe(firstRefetchAll);
|
|
54
|
+
});
|
|
55
|
+
it('should create a new refetch function when dependencies change', function () {
|
|
56
|
+
var refetch1 = jest.fn();
|
|
57
|
+
var refetch2 = jest.fn();
|
|
58
|
+
var refetch3 = jest.fn();
|
|
59
|
+
var states = [{
|
|
60
|
+
refetch: refetch1
|
|
61
|
+
}, {
|
|
62
|
+
refetch: refetch2
|
|
63
|
+
}];
|
|
64
|
+
var _renderHook4 = (0, _react.renderHook)(function () {
|
|
65
|
+
return (0, _useRefetchAll.useRefetchAll)(states);
|
|
66
|
+
}),
|
|
67
|
+
result = _renderHook4.result,
|
|
68
|
+
rerender = _renderHook4.rerender;
|
|
69
|
+
var firstRefetchAll = result.current;
|
|
70
|
+
states = [{
|
|
71
|
+
refetch: refetch1
|
|
72
|
+
}, {
|
|
73
|
+
refetch: refetch3
|
|
74
|
+
}];
|
|
75
|
+
rerender();
|
|
76
|
+
expect(result.current).not.toBe(firstRefetchAll);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
// #sourceMappingURL=useRefetchAll.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_useRefetchAll","describe","it","refetch1","jest","fn","refetch2","refetch3","states","refetch","_renderHook","renderHook","useRefetchAll","result","expect","current","toEqual","any","Function","act","toHaveBeenCalledTimes","_renderHook2","_renderHook3","rerender","firstRefetchAll","toBe","_renderHook4","not"],"sources":["useRefetchAll.test.ts"],"sourcesContent":["import {act, renderHook} from '@testing-library/react';\n\nimport {useRefetchAll} from '../useRefetchAll';\n\ndescribe('useRefetchAll', () => {\n it('should return a function that calls refetch on all states', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n const refetch3 = jest.fn();\n\n const states = [{refetch: refetch1}, {refetch: refetch2}, {refetch: refetch3}];\n\n const {result} = renderHook(() => useRefetchAll(states));\n\n expect(result.current).toEqual(expect.any(Function));\n\n act(() => {\n result.current();\n });\n\n expect(refetch1).toHaveBeenCalledTimes(1);\n expect(refetch2).toHaveBeenCalledTimes(1);\n expect(refetch3).toHaveBeenCalledTimes(1);\n });\n\n it('should handle empty states array', () => {\n const {result} = renderHook(() => useRefetchAll([]));\n\n act(() => {\n result.current();\n });\n });\n\n it('should memoize the refetch function when dependencies do not change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n const states = [{refetch: refetch1}, {refetch: refetch2}];\n\n const {result, rerender} = renderHook(() => useRefetchAll(states));\n\n const firstRefetchAll = result.current;\n\n rerender();\n\n expect(result.current).toBe(firstRefetchAll);\n });\n\n it('should create a new refetch function when dependencies change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n const refetch3 = jest.fn();\n\n let states = [{refetch: refetch1}, {refetch: refetch2}];\n\n const {result, rerender} = renderHook(() => useRefetchAll(states));\n\n const firstRefetchAll = result.current;\n\n states = [{refetch: refetch1}, {refetch: refetch3}];\n\n rerender();\n\n expect(result.current).not.toBe(firstRefetchAll);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
4
|
+
var _useRefetchErrored = require("../useRefetchErrored");
|
|
5
|
+
describe('useRefetchErrored', function () {
|
|
6
|
+
it('should return a function that calls refetch only on states with errors', function () {
|
|
7
|
+
var refetch1 = jest.fn();
|
|
8
|
+
var refetch2 = jest.fn();
|
|
9
|
+
var refetch3 = jest.fn();
|
|
10
|
+
var states = [{
|
|
11
|
+
error: {
|
|
12
|
+
message: 'Error 1'
|
|
13
|
+
},
|
|
14
|
+
refetch: refetch1
|
|
15
|
+
}, {
|
|
16
|
+
error: null,
|
|
17
|
+
refetch: refetch2
|
|
18
|
+
}, {
|
|
19
|
+
error: {
|
|
20
|
+
message: 'Error 3'
|
|
21
|
+
},
|
|
22
|
+
refetch: refetch3
|
|
23
|
+
}];
|
|
24
|
+
var _renderHook = (0, _react.renderHook)(function () {
|
|
25
|
+
return (0, _useRefetchErrored.useRefetchErrored)(states);
|
|
26
|
+
}),
|
|
27
|
+
result = _renderHook.result;
|
|
28
|
+
expect(result.current).toEqual(expect.any(Function));
|
|
29
|
+
(0, _react.act)(function () {
|
|
30
|
+
result.current();
|
|
31
|
+
});
|
|
32
|
+
expect(refetch1).toHaveBeenCalledTimes(1);
|
|
33
|
+
expect(refetch2).toHaveBeenCalledTimes(0);
|
|
34
|
+
expect(refetch3).toHaveBeenCalledTimes(1);
|
|
35
|
+
});
|
|
36
|
+
it('should not call refetch if no states have errors', function () {
|
|
37
|
+
var refetch1 = jest.fn();
|
|
38
|
+
var refetch2 = jest.fn();
|
|
39
|
+
var states = [{
|
|
40
|
+
error: null,
|
|
41
|
+
refetch: refetch1
|
|
42
|
+
}, {
|
|
43
|
+
error: null,
|
|
44
|
+
refetch: refetch2
|
|
45
|
+
}];
|
|
46
|
+
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
47
|
+
return (0, _useRefetchErrored.useRefetchErrored)(states);
|
|
48
|
+
}),
|
|
49
|
+
result = _renderHook2.result;
|
|
50
|
+
(0, _react.act)(function () {
|
|
51
|
+
result.current();
|
|
52
|
+
});
|
|
53
|
+
expect(refetch1).not.toHaveBeenCalled();
|
|
54
|
+
expect(refetch2).not.toHaveBeenCalled();
|
|
55
|
+
});
|
|
56
|
+
it('should handle empty states array', function () {
|
|
57
|
+
var _renderHook3 = (0, _react.renderHook)(function () {
|
|
58
|
+
return (0, _useRefetchErrored.useRefetchErrored)([]);
|
|
59
|
+
}),
|
|
60
|
+
result = _renderHook3.result;
|
|
61
|
+
(0, _react.act)(function () {
|
|
62
|
+
result.current();
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
it('should memoize the refetch function when dependencies do not change', function () {
|
|
66
|
+
var refetch1 = jest.fn();
|
|
67
|
+
var refetch2 = jest.fn();
|
|
68
|
+
var states = [{
|
|
69
|
+
error: {
|
|
70
|
+
message: 'Error 1'
|
|
71
|
+
},
|
|
72
|
+
refetch: refetch1
|
|
73
|
+
}, {
|
|
74
|
+
error: null,
|
|
75
|
+
refetch: refetch2
|
|
76
|
+
}];
|
|
77
|
+
var _renderHook4 = (0, _react.renderHook)(function () {
|
|
78
|
+
return (0, _useRefetchErrored.useRefetchErrored)(states);
|
|
79
|
+
}),
|
|
80
|
+
result = _renderHook4.result,
|
|
81
|
+
rerender = _renderHook4.rerender;
|
|
82
|
+
var firstRefetchErrored = result.current;
|
|
83
|
+
rerender();
|
|
84
|
+
expect(result.current).toBe(firstRefetchErrored);
|
|
85
|
+
});
|
|
86
|
+
it('should create a new refetch function when dependencies change', function () {
|
|
87
|
+
var refetch1 = jest.fn();
|
|
88
|
+
var refetch2 = jest.fn();
|
|
89
|
+
var states = [{
|
|
90
|
+
error: {
|
|
91
|
+
message: 'Error 1'
|
|
92
|
+
},
|
|
93
|
+
refetch: refetch1
|
|
94
|
+
}, {
|
|
95
|
+
error: null,
|
|
96
|
+
refetch: refetch2
|
|
97
|
+
}];
|
|
98
|
+
var _renderHook5 = (0, _react.renderHook)(function () {
|
|
99
|
+
return (0, _useRefetchErrored.useRefetchErrored)(states);
|
|
100
|
+
}),
|
|
101
|
+
result = _renderHook5.result,
|
|
102
|
+
rerender = _renderHook5.rerender;
|
|
103
|
+
var firstRefetchErrored = result.current;
|
|
104
|
+
states = [{
|
|
105
|
+
error: {
|
|
106
|
+
message: 'New Error 1'
|
|
107
|
+
},
|
|
108
|
+
refetch: refetch1
|
|
109
|
+
}, {
|
|
110
|
+
error: null,
|
|
111
|
+
refetch: refetch2
|
|
112
|
+
}];
|
|
113
|
+
rerender();
|
|
114
|
+
expect(result.current).not.toBe(firstRefetchErrored);
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
// #sourceMappingURL=useRefetchErrored.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_useRefetchErrored","describe","it","refetch1","jest","fn","refetch2","refetch3","states","error","message","refetch","_renderHook","renderHook","useRefetchErrored","result","expect","current","toEqual","any","Function","act","toHaveBeenCalledTimes","_renderHook2","not","toHaveBeenCalled","_renderHook3","_renderHook4","rerender","firstRefetchErrored","toBe","_renderHook5"],"sources":["useRefetchErrored.test.ts"],"sourcesContent":["import {act, renderHook} from '@testing-library/react';\n\nimport {useRefetchErrored} from '../useRefetchErrored';\n\ndescribe('useRefetchErrored', () => {\n it('should return a function that calls refetch only on states with errors', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n const refetch3 = jest.fn();\n\n const states = [\n {error: {message: 'Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n {error: {message: 'Error 3'}, refetch: refetch3},\n ];\n\n const {result} = renderHook(() => useRefetchErrored(states));\n\n expect(result.current).toEqual(expect.any(Function));\n\n act(() => {\n result.current();\n });\n\n expect(refetch1).toHaveBeenCalledTimes(1);\n expect(refetch2).toHaveBeenCalledTimes(0);\n expect(refetch3).toHaveBeenCalledTimes(1);\n });\n\n it('should not call refetch if no states have errors', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n const states = [\n {error: null, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n const {result} = renderHook(() => useRefetchErrored(states));\n\n act(() => {\n result.current();\n });\n\n expect(refetch1).not.toHaveBeenCalled();\n expect(refetch2).not.toHaveBeenCalled();\n });\n\n it('should handle empty states array', () => {\n const {result} = renderHook(() => useRefetchErrored([]));\n\n act(() => {\n result.current();\n });\n });\n\n it('should memoize the refetch function when dependencies do not change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n const states = [\n {error: {message: 'Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n const {result, rerender} = renderHook(() => useRefetchErrored(states));\n\n const firstRefetchErrored = result.current;\n\n rerender();\n\n expect(result.current).toBe(firstRefetchErrored);\n });\n\n it('should create a new refetch function when dependencies change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n let states = [\n {error: {message: 'Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n const {result, rerender} = renderHook(() => useRefetchErrored(states));\n\n const firstRefetchErrored = result.current;\n\n states = [\n {error: {message: 'New Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n rerender();\n\n expect(result.current).not.toBe(firstRefetchErrored);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _reactQuery = require("@tanstack/react-query");
|
|
4
|
+
var _react = require("@testing-library/react");
|
|
5
|
+
var _useRefetchInterval = require("../useRefetchInterval");
|
|
6
|
+
describe('useRefetchInterval', function () {
|
|
7
|
+
it('should return undefined when no refetchInterval is provided', function () {
|
|
8
|
+
var _renderHook = (0, _react.renderHook)(function () {
|
|
9
|
+
return (0, _useRefetchInterval.useRefetchInterval)();
|
|
10
|
+
}),
|
|
11
|
+
result = _renderHook.result;
|
|
12
|
+
expect(result.current.refetchInterval).toBeUndefined();
|
|
13
|
+
expect(result.current.queryFn).toBeUndefined();
|
|
14
|
+
});
|
|
15
|
+
it('should return the provided refetchInterval when it is a number', function () {
|
|
16
|
+
var interval = 5000;
|
|
17
|
+
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
18
|
+
return (0, _useRefetchInterval.useRefetchInterval)(interval);
|
|
19
|
+
}),
|
|
20
|
+
result = _renderHook2.result;
|
|
21
|
+
expect(result.current.refetchInterval).toBe(interval);
|
|
22
|
+
});
|
|
23
|
+
it('should return the provided refetchInterval when it is false', function () {
|
|
24
|
+
var interval = false;
|
|
25
|
+
var _renderHook3 = (0, _react.renderHook)(function () {
|
|
26
|
+
return (0, _useRefetchInterval.useRefetchInterval)(interval);
|
|
27
|
+
}),
|
|
28
|
+
result = _renderHook3.result;
|
|
29
|
+
expect(result.current.refetchInterval).toBe(interval);
|
|
30
|
+
});
|
|
31
|
+
it('should wrap the provided refetchInterval function', function () {
|
|
32
|
+
var mockQuery = {
|
|
33
|
+
state: {
|
|
34
|
+
data: {
|
|
35
|
+
value: 42
|
|
36
|
+
},
|
|
37
|
+
status: 'success'
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var refetchInterval = jest.fn(function (_query, count) {
|
|
41
|
+
return count > 3 ? false : 1000;
|
|
42
|
+
});
|
|
43
|
+
var _renderHook4 = (0, _react.renderHook)(function () {
|
|
44
|
+
return (0, _useRefetchInterval.useRefetchInterval)(refetchInterval);
|
|
45
|
+
}),
|
|
46
|
+
result = _renderHook4.result;
|
|
47
|
+
expect(result.current.refetchInterval).toEqual(expect.any(Function));
|
|
48
|
+
var resultInterval = result.current.refetchInterval(mockQuery);
|
|
49
|
+
expect(refetchInterval).toHaveBeenCalledWith(mockQuery, 0);
|
|
50
|
+
expect(resultInterval).toBe(1000);
|
|
51
|
+
});
|
|
52
|
+
it('should wrap the provided queryFn and increment count on each call', function () {
|
|
53
|
+
var mockContext = {};
|
|
54
|
+
var mockQuery = {
|
|
55
|
+
state: {
|
|
56
|
+
data: {
|
|
57
|
+
value: 42
|
|
58
|
+
},
|
|
59
|
+
status: 'success'
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
var queryFn = jest.fn().mockResolvedValue({
|
|
63
|
+
value: 42
|
|
64
|
+
});
|
|
65
|
+
var refetchInterval = jest.fn(function (_query, count) {
|
|
66
|
+
return count > 3 ? false : 1000;
|
|
67
|
+
});
|
|
68
|
+
var _renderHook5 = (0, _react.renderHook)(function () {
|
|
69
|
+
return (0, _useRefetchInterval.useRefetchInterval)(refetchInterval, queryFn);
|
|
70
|
+
}),
|
|
71
|
+
result = _renderHook5.result;
|
|
72
|
+
expect(result.current.queryFn).toEqual(expect.any(Function));
|
|
73
|
+
expect(result.current.refetchInterval).toEqual(expect.any(Function));
|
|
74
|
+
result.current.queryFn(mockContext);
|
|
75
|
+
result.current.refetchInterval(mockQuery);
|
|
76
|
+
result.current.queryFn(mockContext);
|
|
77
|
+
result.current.refetchInterval(mockQuery);
|
|
78
|
+
result.current.queryFn(mockContext);
|
|
79
|
+
result.current.refetchInterval(mockQuery);
|
|
80
|
+
result.current.queryFn(mockContext);
|
|
81
|
+
result.current.refetchInterval(mockQuery);
|
|
82
|
+
expect(queryFn.mock.calls).toEqual([[mockContext], [mockContext], [mockContext], [mockContext]]);
|
|
83
|
+
expect(refetchInterval.mock.calls).toEqual([[mockQuery, 1], [mockQuery, 2], [mockQuery, 3], [mockQuery, 4]]);
|
|
84
|
+
expect(refetchInterval.mock.results).toEqual([{
|
|
85
|
+
type: 'return',
|
|
86
|
+
value: 1000
|
|
87
|
+
}, {
|
|
88
|
+
type: 'return',
|
|
89
|
+
value: 1000
|
|
90
|
+
}, {
|
|
91
|
+
type: 'return',
|
|
92
|
+
value: 1000
|
|
93
|
+
}, {
|
|
94
|
+
type: 'return',
|
|
95
|
+
value: false
|
|
96
|
+
}]);
|
|
97
|
+
});
|
|
98
|
+
it('should return the provided queryFn when it is not a function', function () {
|
|
99
|
+
var _renderHook6 = (0, _react.renderHook)(function () {
|
|
100
|
+
return (0, _useRefetchInterval.useRefetchInterval)(undefined, _reactQuery.skipToken);
|
|
101
|
+
}),
|
|
102
|
+
result = _renderHook6.result;
|
|
103
|
+
expect(result.current.queryFn).toBe(_reactQuery.skipToken);
|
|
104
|
+
});
|
|
105
|
+
it('should memoize the wrapped functions', function () {
|
|
106
|
+
var refetchInterval = jest.fn(function () {
|
|
107
|
+
return 1000;
|
|
108
|
+
});
|
|
109
|
+
var queryFn = jest.fn().mockResolvedValue({
|
|
110
|
+
value: 42
|
|
111
|
+
});
|
|
112
|
+
var _renderHook7 = (0, _react.renderHook)(function () {
|
|
113
|
+
return (0, _useRefetchInterval.useRefetchInterval)(refetchInterval, queryFn);
|
|
114
|
+
}),
|
|
115
|
+
result = _renderHook7.result,
|
|
116
|
+
rerender = _renderHook7.rerender;
|
|
117
|
+
var firstRefetchInterval = result.current.refetchInterval;
|
|
118
|
+
var firstQueryFn = result.current.queryFn;
|
|
119
|
+
rerender();
|
|
120
|
+
expect(result.current.refetchInterval).toBe(firstRefetchInterval);
|
|
121
|
+
expect(result.current.queryFn).toBe(firstQueryFn);
|
|
122
|
+
});
|
|
123
|
+
it('should create new functions when dependencies change', function () {
|
|
124
|
+
var refetchInterval1 = jest.fn(function () {
|
|
125
|
+
return 1000;
|
|
126
|
+
});
|
|
127
|
+
var queryFn1 = jest.fn().mockResolvedValue({
|
|
128
|
+
value: 42
|
|
129
|
+
});
|
|
130
|
+
var _renderHook8 = (0, _react.renderHook)(function (props) {
|
|
131
|
+
return (0, _useRefetchInterval.useRefetchInterval)(props.refetchInterval, props.queryFn);
|
|
132
|
+
}, {
|
|
133
|
+
initialProps: {
|
|
134
|
+
refetchInterval: refetchInterval1,
|
|
135
|
+
queryFn: queryFn1
|
|
136
|
+
}
|
|
137
|
+
}),
|
|
138
|
+
result = _renderHook8.result,
|
|
139
|
+
rerender = _renderHook8.rerender;
|
|
140
|
+
var firstRefetchInterval = result.current.refetchInterval;
|
|
141
|
+
var firstQueryFn = result.current.queryFn;
|
|
142
|
+
var refetchInterval2 = jest.fn(function () {
|
|
143
|
+
return 2000;
|
|
144
|
+
});
|
|
145
|
+
var queryFn2 = jest.fn().mockResolvedValue({
|
|
146
|
+
value: 100
|
|
147
|
+
});
|
|
148
|
+
rerender({
|
|
149
|
+
refetchInterval: refetchInterval2,
|
|
150
|
+
queryFn: queryFn2
|
|
151
|
+
});
|
|
152
|
+
expect(result.current.refetchInterval).not.toBe(firstRefetchInterval);
|
|
153
|
+
expect(result.current.queryFn).not.toBe(firstQueryFn);
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
// #sourceMappingURL=useRefetchInterval.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactQuery","require","_react","_useRefetchInterval","describe","it","_renderHook","renderHook","useRefetchInterval","result","expect","current","refetchInterval","toBeUndefined","queryFn","interval","_renderHook2","toBe","_renderHook3","mockQuery","state","data","value","status","jest","fn","_query","count","_renderHook4","toEqual","any","Function","resultInterval","toHaveBeenCalledWith","mockContext","mockResolvedValue","_renderHook5","mock","calls","results","type","_renderHook6","undefined","skipToken","_renderHook7","rerender","firstRefetchInterval","firstQueryFn","refetchInterval1","queryFn1","_renderHook8","props","initialProps","refetchInterval2","queryFn2","not"],"sources":["useRefetchInterval.test.ts"],"sourcesContent":["import {type Query, skipToken} from '@tanstack/react-query';\nimport {renderHook} from '@testing-library/react';\n\nimport {useRefetchInterval} from '../useRefetchInterval';\n\ndescribe('useRefetchInterval', () => {\n it('should return undefined when no refetchInterval is provided', () => {\n const {result} = renderHook(() => useRefetchInterval());\n\n expect(result.current.refetchInterval).toBeUndefined();\n expect(result.current.queryFn).toBeUndefined();\n });\n\n it('should return the provided refetchInterval when it is a number', () => {\n const interval = 5000;\n const {result} = renderHook(() => useRefetchInterval(interval));\n\n expect(result.current.refetchInterval).toBe(interval);\n });\n\n it('should return the provided refetchInterval when it is false', () => {\n const interval = false;\n const {result} = renderHook(() => useRefetchInterval(interval));\n\n expect(result.current.refetchInterval).toBe(interval);\n });\n\n it('should wrap the provided refetchInterval function', () => {\n const mockQuery = {\n state: {\n data: {value: 42},\n status: 'success',\n },\n } as Query;\n\n const refetchInterval = jest.fn((_query, count) => {\n return count > 3 ? false : 1000;\n });\n\n const {result} = renderHook(() => useRefetchInterval(refetchInterval));\n\n expect(result.current.refetchInterval).toEqual(expect.any(Function));\n\n const resultInterval = (result.current.refetchInterval as Function)(mockQuery);\n\n expect(refetchInterval).toHaveBeenCalledWith(mockQuery, 0);\n expect(resultInterval).toBe(1000);\n });\n\n it('should wrap the provided queryFn and increment count on each call', () => {\n const mockContext = {};\n const mockQuery = {\n state: {\n data: {value: 42},\n status: 'success',\n },\n } as Query;\n\n const queryFn = jest.fn().mockResolvedValue({value: 42});\n const refetchInterval = jest.fn((_query, count) => {\n return count > 3 ? false : 1000;\n });\n\n const {result} = renderHook(() => useRefetchInterval(refetchInterval, queryFn));\n\n expect(result.current.queryFn).toEqual(expect.any(Function));\n expect(result.current.refetchInterval).toEqual(expect.any(Function));\n\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n\n expect(queryFn.mock.calls).toEqual([\n [mockContext],\n [mockContext],\n [mockContext],\n [mockContext],\n ]);\n expect(refetchInterval.mock.calls).toEqual([\n [mockQuery, 1],\n [mockQuery, 2],\n [mockQuery, 3],\n [mockQuery, 4],\n ]);\n expect(refetchInterval.mock.results).toEqual([\n {type: 'return', value: 1000},\n {type: 'return', value: 1000},\n {type: 'return', value: 1000},\n {type: 'return', value: false},\n ]);\n });\n\n it('should return the provided queryFn when it is not a function', () => {\n const {result} = renderHook(() => useRefetchInterval(undefined, skipToken));\n\n expect(result.current.queryFn).toBe(skipToken);\n });\n\n it('should memoize the wrapped functions', () => {\n const refetchInterval = jest.fn(() => 1000);\n const queryFn = jest.fn().mockResolvedValue({value: 42});\n\n const {result, rerender} = renderHook(() => useRefetchInterval(refetchInterval, queryFn));\n\n const firstRefetchInterval = result.current.refetchInterval;\n const firstQueryFn = result.current.queryFn;\n\n rerender();\n\n expect(result.current.refetchInterval).toBe(firstRefetchInterval);\n expect(result.current.queryFn).toBe(firstQueryFn);\n });\n\n it('should create new functions when dependencies change', () => {\n const refetchInterval1 = jest.fn(() => 1000);\n const queryFn1 = jest.fn().mockResolvedValue({value: 42});\n\n const {result, rerender} = renderHook(\n (props) => useRefetchInterval(props.refetchInterval, props.queryFn),\n {\n initialProps: {\n refetchInterval: refetchInterval1,\n queryFn: queryFn1,\n },\n },\n );\n\n const firstRefetchInterval = result.current.refetchInterval;\n const firstQueryFn = result.current.queryFn;\n\n const refetchInterval2 = jest.fn(() => 2000);\n const queryFn2 = jest.fn().mockResolvedValue({value: 100});\n\n rerender({\n refetchInterval: refetchInterval2,\n queryFn: queryFn2,\n });\n\n expect(result.current.refetchInterval).not.toBe(firstRefetchInterval);\n expect(result.current.queryFn).not.toBe(firstQueryFn);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,4 +4,4 @@ export interface UseRefetchIntervalResult<TQueryFnData = unknown, TError = Defau
|
|
|
4
4
|
refetchInterval?: number | false | ((query: Query<TQueryFnData, TError, TQueryData, TQueryKey>) => number | false | undefined);
|
|
5
5
|
queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken;
|
|
6
6
|
}
|
|
7
|
-
export declare const useRefetchInterval: <TQueryFnData = unknown, TError =
|
|
7
|
+
export declare const useRefetchInterval: <TQueryFnData = unknown, TError = DefaultError, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never>(refetchInterval?: RefetchInterval<TQueryFnData, TError, TQueryData, TQueryKey>, queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken) => UseRefetchIntervalResult<TQueryFnData, TError, TQueryData, TQueryKey, TPageParam>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { InfiniteQueryDataSource } from './types';
|
|
2
|
-
export declare const makeInfiniteQueryDataSource: <TParams, TRequest, TResponse, TData, TError
|
|
2
|
+
export declare const makeInfiniteQueryDataSource: <TParams, TRequest, TResponse, TData, TError>(config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>, "type">) => InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["makeInfiniteQueryDataSource","exports","config","_objectSpread","type"],"sources":["factory.ts"],"sourcesContent":["import type {InfiniteQueryDataSource} from './types';\n\nexport const makeInfiniteQueryDataSource =
|
|
1
|
+
{"version":3,"names":["makeInfiniteQueryDataSource","exports","config","_objectSpread","type"],"sources":["factory.ts"],"sourcesContent":["import type {InfiniteQueryDataSource} from './types';\n\nexport const makeInfiniteQueryDataSource = <TParams, TRequest, TResponse, TData, TError>(\n config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>, 'type'>,\n): InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError> => ({\n ...config,\n type: 'infinite',\n});\n"],"mappings":";;;;;;;;AAEO,IAAMA,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAG,SAA9BA,2BAA2BA,CACpCE,MAA0F;EAAA,WAAAC,sBAAA,MAAAA,sBAAA,MAEvFD,MAAM;IACTE,IAAI,EAAE;EAAU;AAAA,CAClB","ignoreList":[]}
|