@mic-rexjs/usecases-react 2.0.2 → 2.1.1
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/dist/index.min.js +1 -1
- package/es/components/UseCaseFragment/index.d.ts +2 -2
- package/es/components/UseCaseFragment/types.d.ts +3 -3
- package/es/configs/defaultUseCaseContext/index.d.ts +2 -3
- package/es/configs/defaultUseCaseContext/types.d.ts +10 -12
- package/es/configs/useCaseContextReferenceMap/types.d.ts +5 -5
- package/es/enums/UseCaseArgumentTypes/index.d.ts +5 -0
- package/es/enums/UseCaseArgumentTypes/index.js +6 -0
- package/es/enums/UseCaseModeErrors/index.d.ts +4 -0
- package/es/enums/UseCaseModeErrors/index.js +5 -0
- package/es/enums/UseCaseStatuses/index.d.ts +10 -0
- package/es/enums/UseCaseStatuses/index.js +18 -0
- package/es/hooks/useArgumentTypes/index.d.ts +3 -0
- package/es/hooks/useArgumentTypes/index.js +19 -0
- package/es/hooks/useContextualItem/index.d.ts +3 -0
- package/es/hooks/useContextualItem/index.js +13 -0
- package/es/hooks/useContextualItem/types.d.ts +3 -0
- package/es/hooks/useEntity/index.d.ts +4 -0
- package/es/hooks/useEntity/index.js +49 -0
- package/es/hooks/useGlobalUseCase/index.js +2 -8
- package/es/hooks/useGlobalUseCase/index.test.js +6 -56
- package/es/hooks/useGlobalUseCase/types.d.ts +4 -11
- package/es/hooks/useMemoizedCall/index.d.ts +2 -0
- package/es/hooks/useMemoizedCall/index.js +15 -0
- package/es/hooks/useProvider/index.d.ts +4 -4
- package/es/hooks/useProvider/index.js +16 -17
- package/es/hooks/useSafeMode/index.d.ts +3 -0
- package/es/hooks/useSafeMode/index.js +18 -0
- package/es/hooks/useStatelessUseCase/index.js +2 -5
- package/es/hooks/useStatelessUseCase/index.test.js +4 -42
- package/es/hooks/useStatelessUseCase/types.d.ts +2 -4
- package/es/hooks/useUseCase/index.js +45 -75
- package/es/hooks/useUseCase/index.test.js +74 -20
- package/es/hooks/useUseCase/types.d.ts +40 -45
- package/es/hooks/useUseCaseContext/index.d.ts +5 -3
- package/es/hooks/useUseCaseContext/index.js +10 -3
- package/es/hooks/useUseCaseContext/index.test.js +39 -12
- package/es/hooks/useUseCaseStatuses/index.d.ts +6 -0
- package/es/hooks/useUseCaseStatuses/index.js +29 -0
- package/es/index.d.ts +1 -1
- package/es/methods/cacheCall/index.d.ts +2 -0
- package/es/methods/cacheCall/index.js +26 -0
- package/es/methods/cacheCall/types.d.ts +13 -0
- package/es/methods/cacheCalls/index.d.ts +2 -0
- package/es/methods/cacheCalls/index.js +8 -0
- package/es/methods/fillArguments/index.d.ts +5 -0
- package/es/methods/fillArguments/index.js +41 -0
- package/es/methods/fillArguments/types.d.ts +10 -0
- package/es/methods/fillArguments/types.js +1 -0
- package/es/methods/getRenderingEntity/index.d.ts +3 -0
- package/es/methods/getRenderingEntity/index.js +13 -0
- package/es/methods/initEntityReducers/index.d.ts +2 -3
- package/es/methods/initEntityReducers/index.js +2 -3
- package/es/methods/triggerCallbacks/index.d.ts +1 -1
- package/es/methods/triggerCallbacks/index.js +3 -3
- package/lib/enums/UseCaseArgumentTypes/index.js +13 -0
- package/lib/enums/UseCaseModeErrors/index.js +12 -0
- package/lib/enums/UseCaseStatuses/index.js +25 -0
- package/lib/hooks/useArgumentTypes/index.js +31 -0
- package/lib/hooks/useContextualItem/index.js +21 -0
- package/lib/hooks/useEntity/index.js +63 -0
- package/lib/hooks/useGlobalUseCase/index.js +2 -15
- package/lib/hooks/useGlobalUseCase/index.test.js +5 -57
- package/lib/hooks/useMemoizedCall/index.js +22 -0
- package/lib/hooks/useProvider/index.js +18 -17
- package/lib/hooks/useSafeMode/index.js +25 -0
- package/lib/hooks/useStatelessUseCase/index.js +2 -12
- package/lib/hooks/useStatelessUseCase/index.test.js +2 -43
- package/lib/hooks/useUseCase/index.js +55 -83
- package/lib/hooks/useUseCase/index.test.js +104 -57
- package/lib/hooks/useUseCaseContext/index.js +12 -3
- package/lib/hooks/useUseCaseContext/index.test.js +45 -19
- package/lib/hooks/useUseCaseStatuses/index.js +36 -0
- package/lib/methods/cacheCall/index.js +42 -0
- package/lib/methods/cacheCalls/index.js +20 -0
- package/lib/methods/fillArguments/index.js +31 -0
- package/lib/methods/fillArguments/types.js +5 -0
- package/lib/methods/getRenderingEntity/index.js +20 -0
- package/lib/methods/initEntityReducers/index.js +2 -3
- package/lib/methods/triggerCallbacks/index.js +3 -3
- package/package.json +3 -3
- package/es/hooks/useChangeCallbackCollection/index.d.ts +0 -3
- package/es/hooks/useChangeCallbackCollection/index.js +0 -29
- package/es/methods/cacheReducerCalls/index.d.ts +0 -3
- package/es/methods/cacheReducerCalls/index.js +0 -26
- package/es/methods/cacheReducerCalls/types.d.ts +0 -11
- package/es/methods/getRootEntity/index.d.ts +0 -3
- package/es/methods/getRootEntity/index.js +0 -10
- package/es/methods/initEntityReducers/types.d.ts +0 -3
- package/es/methods/removeItem/index.d.ts +0 -1
- package/es/methods/removeItem/index.js +0 -7
- package/es/methods/toMaxArguments/index.d.ts +0 -3
- package/es/methods/toMaxArguments/index.js +0 -28
- package/lib/hooks/useChangeCallbackCollection/index.js +0 -37
- package/lib/methods/cacheReducerCalls/index.js +0 -45
- package/lib/methods/getRootEntity/index.js +0 -17
- package/lib/methods/removeItem/index.js +0 -14
- package/lib/methods/toMaxArguments/index.js +0 -25
- /package/es/{methods/cacheReducerCalls → hooks/useContextualItem}/types.js +0 -0
- /package/es/methods/{initEntityReducers → cacheCall}/types.js +0 -0
- /package/lib/{methods/cacheReducerCalls → hooks/useContextualItem}/types.js +0 -0
- /package/lib/methods/{initEntityReducers → cacheCall}/types.js +0 -0
|
@@ -8,103 +8,75 @@ exports.useUseCase = void 0;
|
|
|
8
8
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
9
|
var _ahooks = require("ahooks");
|
|
10
10
|
var _react = require("react");
|
|
11
|
-
var _useConstant = require("../useConstant");
|
|
12
11
|
var _useConstantFn = require("../useConstantFn");
|
|
13
12
|
var _useProvider = require("../useProvider");
|
|
14
|
-
var _useCompareDeps = require("../useCompareDeps");
|
|
15
13
|
var _initEntityReducers = require("../../methods/initEntityReducers");
|
|
16
|
-
var _triggerCallbacks = require("../../methods/triggerCallbacks");
|
|
17
|
-
var _getRootEntity = require("../../methods/getRootEntity");
|
|
18
14
|
var _useUseCaseContext = require("../useUseCaseContext");
|
|
19
|
-
var _defaultUseCaseContext = require("../../configs/defaultUseCaseContext");
|
|
20
15
|
var _useIsRenderingRef = require("../useIsRenderingRef");
|
|
21
|
-
var
|
|
22
|
-
var
|
|
23
|
-
var
|
|
24
|
-
var
|
|
16
|
+
var _fillArguments = require("../../methods/fillArguments");
|
|
17
|
+
var _useArgumentTypes = require("../useArgumentTypes");
|
|
18
|
+
var _useUseCaseStatuses = require("../useUseCaseStatuses");
|
|
19
|
+
var _UseCaseStatuses = require("../../enums/UseCaseStatuses");
|
|
20
|
+
var _useEntity3 = require("../useEntity");
|
|
21
|
+
var _useContextualItem = require("../useContextualItem");
|
|
22
|
+
var _cacheCalls = require("../../methods/cacheCalls");
|
|
23
|
+
var _useSafeMode = require("../useSafeMode");
|
|
25
24
|
var useUseCase = function useUseCase() {
|
|
26
25
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
27
26
|
args[_key] = arguments[_key];
|
|
28
27
|
}
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
var usecase = (0, _useConstantFn.useConstantFn)(unsafeUsecase);
|
|
41
|
-
var entityUseCase = usecase;
|
|
42
|
-
var mode = (0, _useConstant.useConstant)(unsafeMode);
|
|
43
|
-
var depsKey = (0, _useCompareDeps.useCompareDeps)(deps);
|
|
28
|
+
var argumentTypes = (0, _useArgumentTypes.useArgumentTypes)(args);
|
|
29
|
+
var fullArguments = (0, _fillArguments.fillArguments)(args, argumentTypes);
|
|
30
|
+
var _fullArguments = (0, _slicedToArray2["default"])(fullArguments, 5),
|
|
31
|
+
unsafeEntity = _fullArguments[0],
|
|
32
|
+
unsafeUsecase = _fullArguments[1],
|
|
33
|
+
unsafeMode = _fullArguments[2],
|
|
34
|
+
options = _fullArguments[3],
|
|
35
|
+
deps = _fullArguments[4];
|
|
36
|
+
var unkownUsecase = (0, _useConstantFn.useConstantFn)(unsafeUsecase);
|
|
37
|
+
var usecase = unkownUsecase;
|
|
38
|
+
var entityUseCase = unkownUsecase;
|
|
44
39
|
var isRenderingRef = (0, _useIsRenderingRef.useIsRenderingRef)();
|
|
45
|
-
var
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
-
var
|
|
49
|
-
var
|
|
50
|
-
var _ref =
|
|
51
|
-
contextEntity = _ref.entity,
|
|
40
|
+
var mode = (0, _useSafeMode.useSafeMode)(unsafeMode, argumentTypes);
|
|
41
|
+
var context = (0, _useUseCaseContext.useUseCaseContext)(unkownUsecase, argumentTypes, mode);
|
|
42
|
+
var contextValue = (0, _react.useContext)(context);
|
|
43
|
+
var entityContextValue = contextValue;
|
|
44
|
+
var statuses = (0, _useUseCaseStatuses.useUseCaseStatuses)(argumentTypes, mode, contextValue);
|
|
45
|
+
var _ref = contextValue || {},
|
|
52
46
|
_ref$reducers = _ref.reducers,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
var
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
var
|
|
62
|
-
if (
|
|
63
|
-
return
|
|
47
|
+
contextReducers = _ref$reducers === void 0 ? null : _ref$reducers;
|
|
48
|
+
var _ref2 = entityContextValue || {},
|
|
49
|
+
_ref2$store = _ref2.store,
|
|
50
|
+
contextStore = _ref2$store === void 0 ? null : _ref2$store;
|
|
51
|
+
var _useEntity = (0, _useEntity3.useEntity)(statuses, unsafeEntity, contextStore, options),
|
|
52
|
+
_useEntity2 = (0, _slicedToArray2["default"])(_useEntity, 2),
|
|
53
|
+
entity = _useEntity2[0],
|
|
54
|
+
store = _useEntity2[1];
|
|
55
|
+
var reducers = (0, _useContextualItem.useContextualItem)(statuses, contextReducers, function () {
|
|
56
|
+
if ((statuses & _UseCaseStatuses.UseCaseStatuses.EntityEnabled) !== _UseCaseStatuses.UseCaseStatuses.EntityEnabled) {
|
|
57
|
+
return usecase(options);
|
|
64
58
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
});
|
|
73
|
-
var createRootEntityReducers = (0, _ahooks.useMemoizedFn)(function () {
|
|
74
|
-
var initOptions = options;
|
|
75
|
-
return (0, _initEntityReducers.initEntityReducers)(entity, entityUseCase, initOptions, onEntityChange);
|
|
76
|
-
});
|
|
77
|
-
var createReducers = (0, _ahooks.useMemoizedFn)(function () {
|
|
78
|
-
return usecase(options);
|
|
79
|
-
});
|
|
80
|
-
var rootEntityReducers = (0, _ahooks.useCreation)(function () {
|
|
81
|
-
void depsKey;
|
|
82
|
-
if (!isContextRoot) {
|
|
83
|
-
return null;
|
|
59
|
+
var hookOptions = options;
|
|
60
|
+
return (0, _initEntityReducers.initEntityReducers)(entityUseCase, store, hookOptions);
|
|
61
|
+
}, deps);
|
|
62
|
+
var Provider = (0, _useProvider.useProvider)(statuses, context, store, reducers);
|
|
63
|
+
return (0, _ahooks.useCreation)(function () {
|
|
64
|
+
if ((statuses & _UseCaseStatuses.UseCaseStatuses.ContextEnabled) !== _UseCaseStatuses.UseCaseStatuses.ContextEnabled) {
|
|
65
|
+
return reducers;
|
|
84
66
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
return rootEntityReducers || contextEntityReducers || {};
|
|
89
|
-
}, [rootEntityReducers, contextEntityReducers]);
|
|
90
|
-
var reducers = (0, _ahooks.useCreation)(function () {
|
|
91
|
-
void depsKey;
|
|
92
|
-
if (isContextMode) {
|
|
93
|
-
return {};
|
|
67
|
+
var rootEnabled = (statuses & _UseCaseStatuses.UseCaseStatuses.RootEnabled) === _UseCaseStatuses.UseCaseStatuses.RootEnabled;
|
|
68
|
+
if ((statuses & _UseCaseStatuses.UseCaseStatuses.EntityEnabled) !== _UseCaseStatuses.UseCaseStatuses.EntityEnabled) {
|
|
69
|
+
return rootEnabled ? [reducers, Provider] : reducers;
|
|
94
70
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
});
|
|
103
|
-
return (0, _ahooks.useCreation)(function () {
|
|
104
|
-
if (isContextMode) {
|
|
105
|
-
return createCoreCollection(entity, entityReducers);
|
|
71
|
+
var cachedReducers = (0, _cacheCalls.cacheCalls)(reducers, {
|
|
72
|
+
onShouldCache: function onShouldCache() {
|
|
73
|
+
return isRenderingRef.current;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
if (rootEnabled) {
|
|
77
|
+
return [entity, cachedReducers, Provider];
|
|
106
78
|
}
|
|
107
|
-
return
|
|
108
|
-
}, [
|
|
79
|
+
return [entity, cachedReducers];
|
|
80
|
+
}, [statuses, entity, reducers, Provider, isRenderingRef]);
|
|
109
81
|
};
|
|
110
82
|
exports.useUseCase = useUseCase;
|
|
@@ -17,6 +17,7 @@ var _ = require(".");
|
|
|
17
17
|
var _ahooks = require("ahooks");
|
|
18
18
|
var _react2 = require("react");
|
|
19
19
|
var _UseCaseModes = require("../../enums/UseCaseModes");
|
|
20
|
+
var _UseCaseModeErrors = require("../../enums/UseCaseModeErrors");
|
|
20
21
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
21
22
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
22
23
|
function _asyncIterator(iterable) { var method, async, sync, retry = 2; for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) { if (async && null != (method = iterable[async])) return method.call(iterable); if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable)); async = "@@asyncIterator", sync = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
|
|
@@ -173,7 +174,8 @@ var Child = function Child(_ref2) {
|
|
|
173
174
|
};
|
|
174
175
|
var Parent = function Parent(_ref4) {
|
|
175
176
|
var children = _ref4.children,
|
|
176
|
-
mode = _ref4.mode,
|
|
177
|
+
_ref4$mode = _ref4.mode,
|
|
178
|
+
mode = _ref4$mode === void 0 ? _UseCaseModes.UseCaseModes.Normal : _ref4$mode,
|
|
177
179
|
onUpdate = _ref4.onUpdate,
|
|
178
180
|
onSetPath = _ref4.onSetPath;
|
|
179
181
|
var _useUseCase3 = (0, _.useUseCase)(defaultFile, fileUseCase, mode),
|
|
@@ -243,10 +245,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
243
245
|
subtractionReducer.mockClear();
|
|
244
246
|
});
|
|
245
247
|
(0, _globals.describe)('useUseCase', function () {
|
|
246
|
-
|
|
248
|
+
(0, _globals.describe)('`useUseCase` should work the same as `useRootCoreCollection`', function () {
|
|
247
249
|
(0, _globals.test)('check `context.length`', function () {
|
|
248
250
|
var _renderHook = (0, _react.renderHook)(function () {
|
|
249
|
-
return (0, _.useUseCase)(defaultFile, fileUseCase
|
|
251
|
+
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
250
252
|
}),
|
|
251
253
|
result = _renderHook.result;
|
|
252
254
|
var cores = result.current;
|
|
@@ -254,7 +256,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
254
256
|
});
|
|
255
257
|
(0, _globals.test)('`entity` should equal `defaultFile`', function () {
|
|
256
258
|
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
257
|
-
return (0, _.useUseCase)(defaultFile, fileUseCase
|
|
259
|
+
return (0, _.useUseCase)(defaultFile, fileUseCase);
|
|
258
260
|
}),
|
|
259
261
|
result = _renderHook2.result;
|
|
260
262
|
var cores = result.current;
|
|
@@ -582,6 +584,26 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
582
584
|
_react.fireEvent.click(_react.screen.getByText(updateButtonText));
|
|
583
585
|
(0, _globals.expect)(addReducer).toHaveBeenCalledTimes(3);
|
|
584
586
|
});
|
|
587
|
+
_globals.test.each([{
|
|
588
|
+
mode: _UseCaseModes.UseCaseModes.Normal,
|
|
589
|
+
toThrow: ''
|
|
590
|
+
}, {
|
|
591
|
+
mode: _UseCaseModes.UseCaseModes.Global,
|
|
592
|
+
toThrow: _UseCaseModeErrors.UseCaseModeErrors.UnsupportedGlobal
|
|
593
|
+
}, {
|
|
594
|
+
mode: _UseCaseModes.UseCaseModes.Stateless,
|
|
595
|
+
toThrow: ''
|
|
596
|
+
}])('does not support global mode', function (_ref7) {
|
|
597
|
+
var mode = _ref7.mode,
|
|
598
|
+
toThrow = _ref7.toThrow;
|
|
599
|
+
(0, _globals.expect)(function () {
|
|
600
|
+
(0, _react.renderHook)(function () {
|
|
601
|
+
(0, _.useUseCase)(defaultFile, fileUseCase, mode);
|
|
602
|
+
});
|
|
603
|
+
// 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
|
|
604
|
+
throw '';
|
|
605
|
+
}).toThrow(toThrow);
|
|
606
|
+
});
|
|
585
607
|
(0, _globals.test)('stateless mode should not generate new reducers when `yeild entity`', function () {
|
|
586
608
|
var onUpdate = _globals.jest.fn();
|
|
587
609
|
var _renderHook12 = (0, _react.renderHook)(function () {
|
|
@@ -921,8 +943,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
921
943
|
var onChangeB = _globals.jest.fn(updateChangeTimes);
|
|
922
944
|
var onChangeC = _globals.jest.fn(updateChangeTimes);
|
|
923
945
|
var buttonText = 'my button';
|
|
924
|
-
var A = function A(
|
|
925
|
-
var children =
|
|
946
|
+
var A = function A(_ref8) {
|
|
947
|
+
var children = _ref8.children;
|
|
926
948
|
(0, _.useUseCase)(fileUseCase, {
|
|
927
949
|
watch: {
|
|
928
950
|
ext: onChangeA
|
|
@@ -1570,31 +1592,6 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1570
1592
|
(0, _globals.expect)(onParentUpdate).toHaveBeenCalledTimes(0);
|
|
1571
1593
|
(0, _globals.expect)(onChildUpdate).toHaveBeenCalledTimes(0);
|
|
1572
1594
|
});
|
|
1573
|
-
(0, _globals.test)('global mode should trigger Parent to update, but Child shoud not be updated', function () {
|
|
1574
|
-
var onParentUpdate = _globals.jest.fn();
|
|
1575
|
-
var onChildUpdate = _globals.jest.fn();
|
|
1576
|
-
var onSetPath = _globals.jest.fn(function () {
|
|
1577
|
-
return PATH_1;
|
|
1578
|
-
});
|
|
1579
|
-
(0, _react.render)((0, _jsxRuntime.jsx)("div", {
|
|
1580
|
-
children: (0, _jsxRuntime.jsx)(Parent, {
|
|
1581
|
-
mode: _UseCaseModes.UseCaseModes.Global,
|
|
1582
|
-
onSetPath: onSetPath,
|
|
1583
|
-
onUpdate: onParentUpdate,
|
|
1584
|
-
children: (0, _jsxRuntime.jsx)(Child, {
|
|
1585
|
-
onUpdate: onChildUpdate
|
|
1586
|
-
})
|
|
1587
|
-
})
|
|
1588
|
-
}));
|
|
1589
|
-
_react.fireEvent.click(_react.screen.getByText(PARENT_BUTTON_TEXT));
|
|
1590
|
-
(0, _globals.expect)(onSetPath).toHaveBeenCalledTimes(1);
|
|
1591
|
-
(0, _globals.expect)(onParentUpdate).toHaveBeenCalledTimes(1);
|
|
1592
|
-
(0, _globals.expect)(onChildUpdate).toHaveBeenCalledTimes(0);
|
|
1593
|
-
_react.fireEvent.click(_react.screen.getByText(CHILD_BUTTON_TEXT));
|
|
1594
|
-
(0, _globals.expect)(onSetPath).toHaveBeenCalledTimes(1);
|
|
1595
|
-
(0, _globals.expect)(onParentUpdate).toHaveBeenCalledTimes(2);
|
|
1596
|
-
(0, _globals.expect)(onChildUpdate).toHaveBeenCalledTimes(0);
|
|
1597
|
-
});
|
|
1598
1595
|
(0, _globals.test)('`usecase` should not be called at child component', function () {
|
|
1599
1596
|
var mockUseCase = _globals.jest.fn(fileUseCase);
|
|
1600
1597
|
var A = function A() {
|
|
@@ -1821,8 +1818,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1821
1818
|
var onChangeB = _globals.jest.fn(updateChangeTimes);
|
|
1822
1819
|
var onChangeC = _globals.jest.fn(updateChangeTimes);
|
|
1823
1820
|
var buttonText = 'my button';
|
|
1824
|
-
var A = function A(
|
|
1825
|
-
var children =
|
|
1821
|
+
var A = function A(_ref9) {
|
|
1822
|
+
var children = _ref9.children;
|
|
1826
1823
|
(0, _.useUseCase)(fileUseCase, {
|
|
1827
1824
|
onChange: onChangeA
|
|
1828
1825
|
});
|
|
@@ -1863,40 +1860,90 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1863
1860
|
(0, _globals.expect)(onChangeC).toHaveReturnedWith(3);
|
|
1864
1861
|
});
|
|
1865
1862
|
});
|
|
1863
|
+
(0, _globals.describe)('`useUseCase` should work the same as `usePseudoCoreCollection`', function () {
|
|
1864
|
+
(0, _globals.test)('the return value should be `PseudoCoreCollection`', function () {
|
|
1865
|
+
var _renderHook25 = (0, _react.renderHook)(function () {
|
|
1866
|
+
return (0, _.useUseCase)(mathUseCase, _UseCaseModes.UseCaseModes.Global);
|
|
1867
|
+
}),
|
|
1868
|
+
result = _renderHook25.result;
|
|
1869
|
+
var current = result.current;
|
|
1870
|
+
(0, _globals.expect)(current).toEqual([_globals.expect.any(Object), _globals.expect.any(Function)]);
|
|
1871
|
+
});
|
|
1872
|
+
_globals.test.each([{
|
|
1873
|
+
mode: _UseCaseModes.UseCaseModes.Normal,
|
|
1874
|
+
toThrow: ''
|
|
1875
|
+
}, {
|
|
1876
|
+
mode: _UseCaseModes.UseCaseModes.Global,
|
|
1877
|
+
toThrow: ''
|
|
1878
|
+
}, {
|
|
1879
|
+
mode: _UseCaseModes.UseCaseModes.Stateless,
|
|
1880
|
+
toThrow: _UseCaseModeErrors.UseCaseModeErrors.UnsupportedStateless
|
|
1881
|
+
}])('does not support stateless mode', function (_ref10) {
|
|
1882
|
+
var mode = _ref10.mode,
|
|
1883
|
+
toThrow = _ref10.toThrow;
|
|
1884
|
+
(0, _globals.expect)(function () {
|
|
1885
|
+
(0, _react.renderHook)(function () {
|
|
1886
|
+
(0, _.useUseCase)(mathUseCase, mode);
|
|
1887
|
+
});
|
|
1888
|
+
// 如果上面测试成功,则手动 throw '',保证与 toThrow 的值一致
|
|
1889
|
+
throw '';
|
|
1890
|
+
}).toThrow(toThrow);
|
|
1891
|
+
});
|
|
1892
|
+
(0, _globals.test)('the return value should be `reducers` object at child component', function () {
|
|
1893
|
+
var onMountA = _globals.jest.fn();
|
|
1894
|
+
var A = function A() {
|
|
1895
|
+
var reducers = (0, _.useUseCase)(mathUseCase);
|
|
1896
|
+
(0, _ahooks.useMount)(function () {
|
|
1897
|
+
onMountA(reducers);
|
|
1898
|
+
});
|
|
1899
|
+
return null;
|
|
1900
|
+
};
|
|
1901
|
+
var B = function B() {
|
|
1902
|
+
var _useUseCase46 = (0, _.useUseCase)(mathUseCase, _UseCaseModes.UseCaseModes.Global),
|
|
1903
|
+
_useUseCase47 = (0, _slicedToArray2["default"])(_useUseCase46, 2),
|
|
1904
|
+
Provider = _useUseCase47[1];
|
|
1905
|
+
return (0, _jsxRuntime.jsx)(Provider, {
|
|
1906
|
+
children: (0, _jsxRuntime.jsx)(A, {})
|
|
1907
|
+
});
|
|
1908
|
+
};
|
|
1909
|
+
(0, _react.render)((0, _jsxRuntime.jsx)(B, {}));
|
|
1910
|
+
(0, _globals.expect)(onMountA).toHaveBeenCalledWith(_globals.expect.any(Object));
|
|
1911
|
+
});
|
|
1912
|
+
});
|
|
1866
1913
|
(0, _globals.describe)('`useUseCase` should work the same as `useReducers`', function () {
|
|
1867
1914
|
(0, _globals.test)('`entity` should equal `defaultFile`', function () {
|
|
1868
|
-
var
|
|
1915
|
+
var _renderHook26 = (0, _react.renderHook)(function () {
|
|
1869
1916
|
return (0, _.useUseCase)(mathUseCase);
|
|
1870
1917
|
}),
|
|
1871
|
-
result =
|
|
1918
|
+
result = _renderHook26.result;
|
|
1872
1919
|
var reducers = result.current;
|
|
1873
1920
|
(0, _globals.expect)(Array.isArray(reducers)).toBe(false);
|
|
1874
1921
|
});
|
|
1875
1922
|
(0, _globals.test)('returned reducer should work', function () {
|
|
1876
|
-
var
|
|
1923
|
+
var _renderHook27 = (0, _react.renderHook)(function () {
|
|
1877
1924
|
return (0, _.useUseCase)(mathUseCase);
|
|
1878
1925
|
}),
|
|
1879
|
-
result =
|
|
1926
|
+
result = _renderHook27.result;
|
|
1880
1927
|
var reducers = result.current;
|
|
1881
1928
|
var add = reducers.add;
|
|
1882
1929
|
(0, _globals.expect)(add(1, 2)).toBe(3);
|
|
1883
1930
|
});
|
|
1884
1931
|
(0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
|
|
1885
1932
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
1886
|
-
var
|
|
1933
|
+
var _renderHook28 = (0, _react.renderHook)(function () {
|
|
1887
1934
|
return (0, _.useUseCase)(mockUseCase);
|
|
1888
1935
|
}),
|
|
1889
|
-
rerender =
|
|
1936
|
+
rerender = _renderHook28.rerender;
|
|
1890
1937
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
1891
1938
|
rerender();
|
|
1892
1939
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
1893
1940
|
});
|
|
1894
1941
|
(0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
|
|
1895
1942
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
1896
|
-
var
|
|
1943
|
+
var _renderHook29 = (0, _react.renderHook)(function () {
|
|
1897
1944
|
return (0, _.useUseCase)(mockUseCase, {}, [1, 'x']);
|
|
1898
1945
|
}),
|
|
1899
|
-
rerender =
|
|
1946
|
+
rerender = _renderHook29.rerender;
|
|
1900
1947
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
1901
1948
|
rerender();
|
|
1902
1949
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
@@ -1904,10 +1951,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1904
1951
|
(0, _globals.test)('`usecase` should be called if deps has changed', function () {
|
|
1905
1952
|
var i = 0;
|
|
1906
1953
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
1907
|
-
var
|
|
1954
|
+
var _renderHook30 = (0, _react.renderHook)(function () {
|
|
1908
1955
|
return (0, _.useUseCase)(mockUseCase, {}, [i++, 'x']);
|
|
1909
1956
|
}),
|
|
1910
|
-
rerender =
|
|
1957
|
+
rerender = _renderHook30.rerender;
|
|
1911
1958
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
1912
1959
|
rerender();
|
|
1913
1960
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(2);
|
|
@@ -1915,8 +1962,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1915
1962
|
(0, _globals.test)('reducer call should not be cached if component is at rendering phase', function () {
|
|
1916
1963
|
var buttonText = 'button';
|
|
1917
1964
|
var CacheTestComponent = function CacheTestComponent() {
|
|
1918
|
-
var
|
|
1919
|
-
subtraction =
|
|
1965
|
+
var _useUseCase48 = (0, _.useUseCase)(mathUseCase),
|
|
1966
|
+
subtraction = _useUseCase48.subtraction;
|
|
1920
1967
|
var update = (0, _ahooks.useUpdate)();
|
|
1921
1968
|
var onClick = function onClick() {
|
|
1922
1969
|
update();
|
|
@@ -1939,8 +1986,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1939
1986
|
(0, _globals.test)('reducer call should not be cached if component is not at rendering phase', function () {
|
|
1940
1987
|
var buttonText = 'button';
|
|
1941
1988
|
var CacheTestComponent = function CacheTestComponent() {
|
|
1942
|
-
var
|
|
1943
|
-
subtraction =
|
|
1989
|
+
var _useUseCase49 = (0, _.useUseCase)(mathUseCase),
|
|
1990
|
+
subtraction = _useUseCase49.subtraction;
|
|
1944
1991
|
var onClick = function onClick() {
|
|
1945
1992
|
subtraction(5, 3);
|
|
1946
1993
|
};
|
|
@@ -1968,8 +2015,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1968
2015
|
var count = 0;
|
|
1969
2016
|
var buttonText = 'button';
|
|
1970
2017
|
var StringUseCaseTestComponent = function StringUseCaseTestComponent() {
|
|
1971
|
-
var
|
|
1972
|
-
subtraction =
|
|
2018
|
+
var _useUseCase50 = (0, _.useUseCase)(mathUseCase),
|
|
2019
|
+
subtraction = _useUseCase50.subtraction;
|
|
1973
2020
|
var update = (0, _ahooks.useUpdate)();
|
|
1974
2021
|
subtraction(5, count++);
|
|
1975
2022
|
var onUpdate = function onUpdate() {
|
|
@@ -1991,12 +2038,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1991
2038
|
(0, _globals.expect)(subtractionReducer).toHaveReturnedWith(4);
|
|
1992
2039
|
});
|
|
1993
2040
|
(0, _globals.test)('`options.extraValue` should be added after call `add` method', function () {
|
|
1994
|
-
var
|
|
2041
|
+
var _renderHook31 = (0, _react.renderHook)(function () {
|
|
1995
2042
|
return (0, _.useUseCase)(mathUseCase, {
|
|
1996
2043
|
extraValue: 5
|
|
1997
2044
|
});
|
|
1998
2045
|
}),
|
|
1999
|
-
result =
|
|
2046
|
+
result = _renderHook31.result;
|
|
2000
2047
|
var reducers = result.current;
|
|
2001
2048
|
var add = reducers.add;
|
|
2002
2049
|
(0, _globals.expect)(add(1, 2)).toBe(8);
|
|
@@ -2004,7 +2051,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2004
2051
|
(0, _globals.test)('when `options` has changed, it should not trigger update', function () {
|
|
2005
2052
|
var onUpdate = _globals.jest.fn();
|
|
2006
2053
|
var onDeepUpdate = _globals.jest.fn();
|
|
2007
|
-
var
|
|
2054
|
+
var _renderHook32 = (0, _react.renderHook)(function () {
|
|
2008
2055
|
var _useState7 = (0, _react2.useState)(0),
|
|
2009
2056
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
2010
2057
|
extraValue = _useState8[0],
|
|
@@ -2020,7 +2067,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2020
2067
|
}, [reducers]);
|
|
2021
2068
|
return setExtraValue;
|
|
2022
2069
|
}),
|
|
2023
|
-
result =
|
|
2070
|
+
result = _renderHook32.result;
|
|
2024
2071
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2025
2072
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2026
2073
|
(0, _react.act)(function () {
|
|
@@ -2032,7 +2079,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2032
2079
|
(0, _globals.test)('when `deps` change, it should update reducers', function () {
|
|
2033
2080
|
var onUpdate = _globals.jest.fn();
|
|
2034
2081
|
var onDeepUpdate = _globals.jest.fn();
|
|
2035
|
-
var
|
|
2082
|
+
var _renderHook33 = (0, _react.renderHook)(function () {
|
|
2036
2083
|
var _useState9 = (0, _react2.useState)(0),
|
|
2037
2084
|
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
2038
2085
|
extraValue = _useState10[0],
|
|
@@ -2048,7 +2095,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2048
2095
|
}, [reducers]);
|
|
2049
2096
|
return setExtraValue;
|
|
2050
2097
|
}),
|
|
2051
|
-
result =
|
|
2098
|
+
result = _renderHook33.result;
|
|
2052
2099
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2053
2100
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2054
2101
|
(0, _react.act)(function () {
|
|
@@ -2060,7 +2107,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2060
2107
|
(0, _globals.test)('empty `deps` should not update reducers', function () {
|
|
2061
2108
|
var onUpdate = _globals.jest.fn();
|
|
2062
2109
|
var onDeepUpdate = _globals.jest.fn();
|
|
2063
|
-
var
|
|
2110
|
+
var _renderHook34 = (0, _react.renderHook)(function () {
|
|
2064
2111
|
var _useState11 = (0, _react2.useState)(0),
|
|
2065
2112
|
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
2066
2113
|
extraValue = _useState12[0],
|
|
@@ -2076,7 +2123,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2076
2123
|
}, [reducers]);
|
|
2077
2124
|
return setExtraValue;
|
|
2078
2125
|
}),
|
|
2079
|
-
result =
|
|
2126
|
+
result = _renderHook34.result;
|
|
2080
2127
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2081
2128
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2082
2129
|
(0, _react.act)(function () {
|
|
@@ -8,7 +8,12 @@ var _useConstant = require("../useConstant");
|
|
|
8
8
|
var _useCaseContextReferenceMap = require("../../configs/useCaseContextReferenceMap");
|
|
9
9
|
var _react = require("react");
|
|
10
10
|
var _ahooks = require("ahooks");
|
|
11
|
-
var
|
|
11
|
+
var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
|
|
12
|
+
var _UseCaseModes = require("../../enums/UseCaseModes");
|
|
13
|
+
var _defaultUseCaseContext = require("../../configs/defaultUseCaseContext");
|
|
14
|
+
var useUseCaseContext = function useUseCaseContext(usecase) {
|
|
15
|
+
var argumentTypes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _UseCaseArgumentTypes.UseCaseArgumentTypes.None;
|
|
16
|
+
var mode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _UseCaseModes.UseCaseModes.Normal;
|
|
12
17
|
var map = _useCaseContextReferenceMap.usecaseContextReferenceMap;
|
|
13
18
|
var context = (0, _useConstant.useConstant)(function () {
|
|
14
19
|
if (map.has(usecase)) {
|
|
@@ -21,8 +26,12 @@ var useUseCaseContext = function useUseCaseContext(usecase, defaultContext) {
|
|
|
21
26
|
});
|
|
22
27
|
return value;
|
|
23
28
|
}
|
|
24
|
-
|
|
25
|
-
|
|
29
|
+
switch (true) {
|
|
30
|
+
case (mode & _UseCaseModes.UseCaseModes.Global) === _UseCaseModes.UseCaseModes.Global:
|
|
31
|
+
case (argumentTypes & _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity) === _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity:
|
|
32
|
+
break;
|
|
33
|
+
default:
|
|
34
|
+
return _defaultUseCaseContext.defaultUseCaseContext;
|
|
26
35
|
}
|
|
27
36
|
var ctx = (0, _react.createContext)(null);
|
|
28
37
|
map.set(usecase, {
|
|
@@ -5,51 +5,77 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
|
5
5
|
var _globals = require("@jest/globals");
|
|
6
6
|
var _react = require("@testing-library/react");
|
|
7
7
|
var _ = require(".");
|
|
8
|
-
var _usecases = require("@mic-rexjs/usecases");
|
|
9
8
|
var _defaultUseCaseContext = require("../../configs/defaultUseCaseContext");
|
|
10
9
|
var _useCaseContextReferenceMap = require("../../configs/useCaseContextReferenceMap");
|
|
10
|
+
var _UseCaseModes = require("../../enums/UseCaseModes");
|
|
11
|
+
var _UseCaseArgumentTypes = require("../../enums/UseCaseArgumentTypes");
|
|
11
12
|
var testUseCase = function testUseCase() {
|
|
12
|
-
return
|
|
13
|
+
return {};
|
|
13
14
|
};
|
|
14
15
|
(0, _globals.describe)('useUseCaseContext', function () {
|
|
15
|
-
(0, _globals.test)('should return the default context if map has not
|
|
16
|
-
var defaultContext = _defaultUseCaseContext.defaultUseCaseContext;
|
|
16
|
+
(0, _globals.test)('should return the default context if map has not saved a usecase with default args', function () {
|
|
17
17
|
var _renderHook = (0, _react.renderHook)(function () {
|
|
18
|
-
return (0, _.useUseCaseContext)(testUseCase
|
|
18
|
+
return (0, _.useUseCaseContext)(testUseCase);
|
|
19
19
|
}),
|
|
20
20
|
result = _renderHook.result;
|
|
21
21
|
var current = result.current;
|
|
22
22
|
(0, _globals.expect)(current).toBe(_defaultUseCaseContext.defaultUseCaseContext);
|
|
23
23
|
});
|
|
24
|
-
(0, _globals.test)('should return
|
|
24
|
+
(0, _globals.test)('should return the default context if map has not saved a usecase with `UseCaseArgumentTypes.None` & `UseCaseModes.Normal`', function () {
|
|
25
25
|
var _renderHook2 = (0, _react.renderHook)(function () {
|
|
26
|
-
return (0, _.useUseCaseContext)(testUseCase,
|
|
26
|
+
return (0, _.useUseCaseContext)(testUseCase, _UseCaseArgumentTypes.UseCaseArgumentTypes.None, _UseCaseModes.UseCaseModes.Normal);
|
|
27
27
|
}),
|
|
28
28
|
result = _renderHook2.result;
|
|
29
29
|
var current = result.current;
|
|
30
|
-
(0, _globals.expect)(
|
|
30
|
+
(0, _globals.expect)(current).toBe(_defaultUseCaseContext.defaultUseCaseContext);
|
|
31
31
|
});
|
|
32
|
-
|
|
32
|
+
(0, _globals.test)('should return a new context if map has not saved a usecase with `UseCaseArgumentTypes.Entity` & `UseCaseModes.Normal`', function () {
|
|
33
33
|
var _renderHook3 = (0, _react.renderHook)(function () {
|
|
34
|
-
return (0, _.useUseCaseContext)(testUseCase
|
|
34
|
+
return (0, _.useUseCaseContext)(testUseCase, _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity, _UseCaseModes.UseCaseModes.Normal);
|
|
35
35
|
}),
|
|
36
36
|
result = _renderHook3.result;
|
|
37
|
+
var current = result.current;
|
|
38
|
+
(0, _globals.expect)((0, _typeof2["default"])(current)).toBe('object');
|
|
39
|
+
});
|
|
40
|
+
(0, _globals.test)('should return a new context if map has not saved a usecase with `UseCaseArgumentTypes.None` & `UseCaseModes.Global`', function () {
|
|
41
|
+
var _renderHook4 = (0, _react.renderHook)(function () {
|
|
42
|
+
return (0, _.useUseCaseContext)(testUseCase, _UseCaseArgumentTypes.UseCaseArgumentTypes.None, _UseCaseModes.UseCaseModes.Global);
|
|
43
|
+
}),
|
|
44
|
+
result = _renderHook4.result;
|
|
45
|
+
var current = result.current;
|
|
46
|
+
(0, _globals.expect)((0, _typeof2["default"])(current)).toBe('object');
|
|
47
|
+
});
|
|
48
|
+
_globals.test.each([{
|
|
49
|
+
type: _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity,
|
|
50
|
+
mode: _UseCaseModes.UseCaseModes.Normal
|
|
51
|
+
}, {
|
|
52
|
+
type: _UseCaseArgumentTypes.UseCaseArgumentTypes.None,
|
|
53
|
+
mode: _UseCaseModes.UseCaseModes.Global
|
|
54
|
+
}, {
|
|
55
|
+
type: _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity,
|
|
56
|
+
mode: _UseCaseModes.UseCaseModes.Global
|
|
57
|
+
}])('should return the existing context if map has save a usecase already', function (_ref) {
|
|
58
|
+
var type = _ref.type,
|
|
59
|
+
mode = _ref.mode;
|
|
60
|
+
var _renderHook5 = (0, _react.renderHook)(function () {
|
|
61
|
+
return (0, _.useUseCaseContext)(testUseCase, type, mode) === (0, _.useUseCaseContext)(testUseCase);
|
|
62
|
+
}),
|
|
63
|
+
result = _renderHook5.result;
|
|
37
64
|
var isSame = result.current;
|
|
38
65
|
(0, _globals.expect)(isSame).toBe(true);
|
|
39
66
|
});
|
|
40
67
|
(0, _globals.test)('check context reference times when mount/unmount a usecase', function () {
|
|
41
|
-
var
|
|
42
|
-
(0, _.useUseCaseContext)(testUseCase);
|
|
68
|
+
var _renderHook6 = (0, _react.renderHook)(function () {
|
|
69
|
+
(0, _.useUseCaseContext)(testUseCase, _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity);
|
|
43
70
|
}),
|
|
44
|
-
unmount1 =
|
|
71
|
+
unmount1 = _renderHook6.unmount;
|
|
45
72
|
var _usecaseContextRefere = _useCaseContextReferenceMap.usecaseContextReferenceMap.get(testUseCase),
|
|
46
73
|
times1 = _usecaseContextRefere.times;
|
|
47
|
-
var
|
|
74
|
+
var _renderHook7 = (0, _react.renderHook)(function () {
|
|
48
75
|
(0, _.useUseCaseContext)(testUseCase);
|
|
49
76
|
(0, _.useUseCaseContext)(testUseCase);
|
|
50
77
|
}),
|
|
51
|
-
unmount2 =
|
|
52
|
-
rerender2 = _renderHook5.rerender;
|
|
78
|
+
unmount2 = _renderHook7.unmount;
|
|
53
79
|
var _usecaseContextRefere2 = _useCaseContextReferenceMap.usecaseContextReferenceMap.get(testUseCase),
|
|
54
80
|
times2 = _usecaseContextRefere2.times;
|
|
55
81
|
(0, _globals.expect)(times1).toBe(1);
|
|
@@ -63,10 +89,10 @@ var testUseCase = function testUseCase() {
|
|
|
63
89
|
(0, _globals.expect)(hasSaved).toBe(false);
|
|
64
90
|
});
|
|
65
91
|
(0, _globals.test)('context reference times should not change when rerender hooks', function () {
|
|
66
|
-
var
|
|
67
|
-
(0, _.useUseCaseContext)(testUseCase);
|
|
92
|
+
var _renderHook8 = (0, _react.renderHook)(function () {
|
|
93
|
+
(0, _.useUseCaseContext)(testUseCase, _UseCaseArgumentTypes.UseCaseArgumentTypes.Entity);
|
|
68
94
|
}),
|
|
69
|
-
rerender =
|
|
95
|
+
rerender = _renderHook8.rerender;
|
|
70
96
|
rerender();
|
|
71
97
|
var _usecaseContextRefere4 = _useCaseContextReferenceMap.usecaseContextReferenceMap.get(testUseCase),
|
|
72
98
|
times = _usecaseContextRefere4.times;
|