@mic-rexjs/usecases-react 2.3.2 → 2.3.4
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 +1 -1
- package/es/components/UseCaseFragment/index.js +2 -2
- package/es/components/UseCaseFragment/types.d.ts +0 -2
- package/es/hooks/useEntity/index.js +11 -17
- package/es/hooks/useUseCase/index.js +8 -3
- package/es/hooks/useUseCase/index.test.js +45 -685
- package/es/hooks/useUseCase/types.d.ts +0 -14
- package/es/methods/captureCalls/index.d.ts +2 -0
- package/es/methods/captureCalls/index.js +14 -0
- package/es/methods/captureCalls/types.d.ts +4 -0
- package/es/methods/captureCalls/types.js +1 -0
- package/es/methods/initEntityReducers/index.js +1 -1
- package/lib/components/UseCaseFragment/index.js +0 -2
- package/lib/hooks/useEntity/index.js +10 -17
- package/lib/hooks/useUseCase/index.js +9 -2
- package/lib/hooks/useUseCase/index.test.js +120 -927
- package/lib/methods/captureCalls/index.js +23 -0
- package/lib/methods/captureCalls/types.js +5 -0
- package/lib/methods/initEntityReducers/index.js +2 -3
- package/package.json +1 -1
- package/es/methods/triggerCallbacks/index.d.ts +0 -2
- package/es/methods/triggerCallbacks/index.js +0 -5
- package/es/methods/triggerWatchers/index.d.ts +0 -2
- package/es/methods/triggerWatchers/index.js +0 -14
- package/lib/methods/triggerCallbacks/index.js +0 -11
- package/lib/methods/triggerWatchers/index.js +0 -28
|
@@ -36,7 +36,8 @@ var fileUseCase = function fileUseCase() {
|
|
|
36
36
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
37
37
|
var entityReducers = (0, _usecases.objectUseCase)();
|
|
38
38
|
var _options$pathPrefix = options.pathPrefix,
|
|
39
|
-
pathPrefix = _options$pathPrefix === void 0 ? '' : _options$pathPrefix
|
|
39
|
+
pathPrefix = _options$pathPrefix === void 0 ? '' : _options$pathPrefix,
|
|
40
|
+
onPathChange = options.onPathChange;
|
|
40
41
|
var init = function init(entity) {
|
|
41
42
|
var newEntity = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultFile;
|
|
42
43
|
return /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
@@ -56,15 +57,20 @@ var fileUseCase = function fileUseCase() {
|
|
|
56
57
|
};
|
|
57
58
|
var setPath = /*#__PURE__*/_regenerator["default"].mark(function setPath(entity, path) {
|
|
58
59
|
var _path$match;
|
|
60
|
+
var oldPath, newPath;
|
|
59
61
|
return _regenerator["default"].wrap(function setPath$(_context2) {
|
|
60
62
|
while (1) switch (_context2.prev = _context2.next) {
|
|
61
63
|
case 0:
|
|
62
|
-
|
|
64
|
+
oldPath = entity.path;
|
|
65
|
+
newPath = pathPrefix + path;
|
|
66
|
+
_context2.next = 4;
|
|
63
67
|
return _objectSpread(_objectSpread({}, entity), {}, {
|
|
64
|
-
path:
|
|
68
|
+
path: newPath,
|
|
65
69
|
ext: ((_path$match = path.match(/\.[^.]+$/)) === null || _path$match === void 0 ? void 0 : _path$match[0]) || ''
|
|
66
70
|
});
|
|
67
|
-
case
|
|
71
|
+
case 4:
|
|
72
|
+
onPathChange === null || onPathChange === void 0 || onPathChange(newPath, oldPath);
|
|
73
|
+
case 5:
|
|
68
74
|
case "end":
|
|
69
75
|
return _context2.stop();
|
|
70
76
|
}
|
|
@@ -126,9 +132,6 @@ var mathUseCase = function mathUseCase() {
|
|
|
126
132
|
subtraction: subtractionReducer
|
|
127
133
|
};
|
|
128
134
|
};
|
|
129
|
-
var fieldPathUseCase = function fieldPathUseCase() {
|
|
130
|
-
return (0, _usecases.objectUseCase)();
|
|
131
|
-
};
|
|
132
135
|
var Child = function Child(_ref2) {
|
|
133
136
|
var _ref2$textPrefix = _ref2.textPrefix,
|
|
134
137
|
textPrefix = _ref2$textPrefix === void 0 ? '' : _ref2$textPrefix,
|
|
@@ -606,15 +609,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
606
609
|
ext: EXT_1
|
|
607
610
|
}), defaultFile);
|
|
608
611
|
});
|
|
609
|
-
(0, _globals.test)('`options.onChange` should
|
|
612
|
+
(0, _globals.test)('`options.onChange` should always trigger the latest one', function () {
|
|
610
613
|
var onChange1 = _globals.jest.fn();
|
|
611
614
|
var onChange2 = _globals.jest.fn();
|
|
612
615
|
var onChange = onChange1;
|
|
613
|
-
var deps = [1];
|
|
614
616
|
var _renderHook13 = (0, _react.renderHook)(function () {
|
|
615
617
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
616
618
|
onChange: onChange
|
|
617
|
-
},
|
|
619
|
+
}, []);
|
|
618
620
|
}),
|
|
619
621
|
result = _renderHook13.result;
|
|
620
622
|
var cores = result.current;
|
|
@@ -624,7 +626,6 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
624
626
|
(0, _globals.expect)(onChange1).toHaveBeenCalledTimes(0);
|
|
625
627
|
(0, _react.act)(function () {
|
|
626
628
|
setPath(PATH_1);
|
|
627
|
-
deps = [2];
|
|
628
629
|
onChange = onChange2;
|
|
629
630
|
});
|
|
630
631
|
(0, _globals.expect)(onChange2).toHaveBeenCalledTimes(0);
|
|
@@ -646,46 +647,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
646
647
|
ext: EXT_1
|
|
647
648
|
}));
|
|
648
649
|
});
|
|
649
|
-
(0, _globals.test)('`options.onChange` should not be updated if `deps` has not changed', function () {
|
|
650
|
-
var onChange1 = _globals.jest.fn();
|
|
651
|
-
var onChange2 = _globals.jest.fn();
|
|
652
|
-
var onChange = onChange1;
|
|
653
|
-
var _renderHook14 = (0, _react.renderHook)(function () {
|
|
654
|
-
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
655
|
-
onChange: onChange
|
|
656
|
-
}, []);
|
|
657
|
-
}),
|
|
658
|
-
result = _renderHook14.result;
|
|
659
|
-
var cores = result.current;
|
|
660
|
-
var _cores12 = (0, _slicedToArray2["default"])(cores, 2),
|
|
661
|
-
reducers = _cores12[1];
|
|
662
|
-
var setPath = reducers.setPath;
|
|
663
|
-
(0, _globals.expect)(onChange1).toHaveBeenCalledTimes(0);
|
|
664
|
-
(0, _react.act)(function () {
|
|
665
|
-
setPath(PATH_1);
|
|
666
|
-
onChange = onChange2;
|
|
667
|
-
});
|
|
668
|
-
(0, _globals.expect)(onChange2).toHaveBeenCalledTimes(0);
|
|
669
|
-
(0, _globals.expect)(onChange1).toHaveBeenCalledTimes(1);
|
|
670
|
-
(0, _globals.expect)(onChange1).toHaveBeenLastCalledWith(_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
671
|
-
path: PATH_1,
|
|
672
|
-
ext: EXT_1
|
|
673
|
-
}), defaultFile);
|
|
674
|
-
(0, _react.act)(function () {
|
|
675
|
-
setPath(PATH_2);
|
|
676
|
-
});
|
|
677
|
-
(0, _globals.expect)(onChange2).toHaveBeenCalledTimes(0);
|
|
678
|
-
(0, _globals.expect)(onChange1).toHaveBeenCalledTimes(2);
|
|
679
|
-
(0, _globals.expect)(onChange1).toHaveBeenLastCalledWith(_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
680
|
-
path: PATH_2,
|
|
681
|
-
ext: EXT_2
|
|
682
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
683
|
-
path: PATH_1,
|
|
684
|
-
ext: EXT_1
|
|
685
|
-
}));
|
|
686
|
-
});
|
|
687
650
|
(0, _globals.test)('`options.options` should override rest options', function () {
|
|
688
|
-
var
|
|
651
|
+
var _renderHook14 = (0, _react.renderHook)(function () {
|
|
689
652
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
690
653
|
pathPrefix: 'xyz/',
|
|
691
654
|
options: {
|
|
@@ -693,11 +656,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
693
656
|
}
|
|
694
657
|
});
|
|
695
658
|
}),
|
|
696
|
-
result =
|
|
659
|
+
result = _renderHook14.result;
|
|
697
660
|
var cores = result.current;
|
|
698
|
-
var
|
|
699
|
-
path =
|
|
700
|
-
reducers =
|
|
661
|
+
var _cores12 = (0, _slicedToArray2["default"])(cores, 2),
|
|
662
|
+
path = _cores12[0].path,
|
|
663
|
+
reducers = _cores12[1];
|
|
701
664
|
var setPath = reducers.setPath;
|
|
702
665
|
(0, _globals.expect)(path).toBe('');
|
|
703
666
|
(0, _react.act)(function () {
|
|
@@ -708,7 +671,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
708
671
|
(0, _globals.test)('when `options` has changed, it should not trigger update', function () {
|
|
709
672
|
var onUpdate = _globals.jest.fn();
|
|
710
673
|
var onDeepUpdate = _globals.jest.fn();
|
|
711
|
-
var
|
|
674
|
+
var _renderHook15 = (0, _react.renderHook)(function () {
|
|
712
675
|
var _useState = (0, _react2.useState)('user/'),
|
|
713
676
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
714
677
|
pathPrefix = _useState2[0],
|
|
@@ -724,7 +687,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
724
687
|
}, [context]);
|
|
725
688
|
return setPathPrefix;
|
|
726
689
|
}),
|
|
727
|
-
result =
|
|
690
|
+
result = _renderHook15.result;
|
|
728
691
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
729
692
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
730
693
|
(0, _react.act)(function () {
|
|
@@ -733,42 +696,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
733
696
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
734
697
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
735
698
|
});
|
|
736
|
-
(0, _globals.test)('when `entity` change, it should trigger watchers', function () {
|
|
737
|
-
var onPathChange = _globals.jest.fn();
|
|
738
|
-
var onSizeChange = _globals.jest.fn();
|
|
739
|
-
var _renderHook17 = (0, _react.renderHook)(function () {
|
|
740
|
-
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
741
|
-
watch: {
|
|
742
|
-
path: onPathChange,
|
|
743
|
-
size: onSizeChange
|
|
744
|
-
}
|
|
745
|
-
});
|
|
746
|
-
}),
|
|
747
|
-
result = _renderHook17.result;
|
|
748
|
-
var cores = result.current;
|
|
749
|
-
var _cores14 = (0, _slicedToArray2["default"])(cores, 2),
|
|
750
|
-
setPath = _cores14[1].setPath;
|
|
751
|
-
(0, _globals.expect)(onPathChange).toHaveBeenCalledTimes(0);
|
|
752
|
-
(0, _react.act)(function () {
|
|
753
|
-
setPath(PATH_1);
|
|
754
|
-
});
|
|
755
|
-
(0, _globals.expect)(onPathChange).toHaveBeenCalledTimes(1);
|
|
756
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(0);
|
|
757
|
-
(0, _globals.expect)(onPathChange).toHaveBeenLastCalledWith({
|
|
758
|
-
fieldPaths: ['path'],
|
|
759
|
-
newEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
760
|
-
path: PATH_1,
|
|
761
|
-
ext: EXT_1
|
|
762
|
-
}),
|
|
763
|
-
oldEntity: defaultFile,
|
|
764
|
-
newValue: PATH_1,
|
|
765
|
-
oldValue: ''
|
|
766
|
-
});
|
|
767
|
-
});
|
|
768
699
|
(0, _globals.test)('when `deps` has changed, it should trigger update', function () {
|
|
769
700
|
var onUpdate = _globals.jest.fn();
|
|
770
701
|
var onDeepUpdate = _globals.jest.fn();
|
|
771
|
-
var
|
|
702
|
+
var _renderHook16 = (0, _react.renderHook)(function () {
|
|
772
703
|
var _useState3 = (0, _react2.useState)('user/'),
|
|
773
704
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
774
705
|
pathPrefix = _useState4[0],
|
|
@@ -784,7 +715,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
784
715
|
}, [context]);
|
|
785
716
|
return setPathPrefix;
|
|
786
717
|
}),
|
|
787
|
-
result =
|
|
718
|
+
result = _renderHook16.result;
|
|
788
719
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
789
720
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
790
721
|
(0, _react.act)(function () {
|
|
@@ -796,7 +727,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
796
727
|
(0, _globals.test)('empty `deps` should not trigger update', function () {
|
|
797
728
|
var onUpdate = _globals.jest.fn();
|
|
798
729
|
var onDeepUpdate = _globals.jest.fn();
|
|
799
|
-
var
|
|
730
|
+
var _renderHook17 = (0, _react.renderHook)(function () {
|
|
800
731
|
var _useState5 = (0, _react2.useState)('user/'),
|
|
801
732
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
802
733
|
pathPrefix = _useState6[0],
|
|
@@ -812,7 +743,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
812
743
|
}, [context]);
|
|
813
744
|
return setPathPrefix;
|
|
814
745
|
}),
|
|
815
|
-
result =
|
|
746
|
+
result = _renderHook17.result;
|
|
816
747
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
817
748
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
818
749
|
(0, _react.act)(function () {
|
|
@@ -821,610 +752,32 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
821
752
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
822
753
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
823
754
|
});
|
|
824
|
-
(0, _globals.test)(
|
|
755
|
+
(0, _globals.test)("should call latest functions of usecase options even deps has not change", function () {
|
|
825
756
|
var onPathChange1 = _globals.jest.fn();
|
|
826
757
|
var onPathChange2 = _globals.jest.fn();
|
|
827
758
|
var onPathChange = onPathChange1;
|
|
828
|
-
var
|
|
829
|
-
var _renderHook20 = (0, _react.renderHook)(function () {
|
|
759
|
+
var _renderHook18 = (0, _react.renderHook)(function () {
|
|
830
760
|
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
}
|
|
834
|
-
}, deps);
|
|
761
|
+
onPathChange: onPathChange
|
|
762
|
+
});
|
|
835
763
|
}),
|
|
836
|
-
result =
|
|
837
|
-
var
|
|
838
|
-
var
|
|
839
|
-
|
|
840
|
-
setPath = _cores15$.setPath,
|
|
841
|
-
setEntity = _cores15$.setEntity;
|
|
842
|
-
(0, _globals.expect)(onPathChange1).toHaveBeenCalledTimes(0);
|
|
764
|
+
result = _renderHook18.result;
|
|
765
|
+
var context = result.current;
|
|
766
|
+
var _context6 = (0, _slicedToArray2["default"])(context, 2),
|
|
767
|
+
setPath = _context6[1].setPath;
|
|
843
768
|
(0, _react.act)(function () {
|
|
844
769
|
setPath(PATH_1);
|
|
845
|
-
setEntity({
|
|
846
|
-
size: 5000
|
|
847
|
-
});
|
|
848
|
-
deps = [2];
|
|
849
770
|
onPathChange = onPathChange2;
|
|
850
771
|
});
|
|
851
772
|
(0, _globals.expect)(onPathChange1).toHaveBeenCalledTimes(1);
|
|
852
|
-
(0, _globals.expect)(
|
|
853
|
-
|
|
854
|
-
newEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
855
|
-
path: PATH_1,
|
|
856
|
-
ext: EXT_1
|
|
857
|
-
}),
|
|
858
|
-
oldEntity: defaultFile,
|
|
859
|
-
newValue: PATH_1,
|
|
860
|
-
oldValue: ''
|
|
861
|
-
});
|
|
773
|
+
(0, _globals.expect)(onPathChange2).toHaveBeenCalledTimes(0);
|
|
774
|
+
(0, _globals.expect)(onPathChange1).toHaveBeenLastCalledWith(PATH_1, '');
|
|
862
775
|
(0, _react.act)(function () {
|
|
863
|
-
setPath(
|
|
776
|
+
setPath(PATH_2);
|
|
864
777
|
});
|
|
865
778
|
(0, _globals.expect)(onPathChange1).toHaveBeenCalledTimes(1);
|
|
866
779
|
(0, _globals.expect)(onPathChange2).toHaveBeenCalledTimes(1);
|
|
867
|
-
(0, _globals.expect)(onPathChange2).toHaveBeenLastCalledWith(
|
|
868
|
-
fieldPaths: ['path'],
|
|
869
|
-
newEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
870
|
-
size: 5000
|
|
871
|
-
}),
|
|
872
|
-
oldEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
873
|
-
path: PATH_1,
|
|
874
|
-
ext: EXT_1,
|
|
875
|
-
size: 5000
|
|
876
|
-
}),
|
|
877
|
-
newValue: '',
|
|
878
|
-
oldValue: PATH_1
|
|
879
|
-
});
|
|
880
|
-
});
|
|
881
|
-
(0, _globals.test)('`options.watch` should not be updated if `deps` has not changed', function () {
|
|
882
|
-
var onPathChange1 = _globals.jest.fn();
|
|
883
|
-
var onPathChange2 = _globals.jest.fn();
|
|
884
|
-
var onPathChange = onPathChange1;
|
|
885
|
-
var _renderHook21 = (0, _react.renderHook)(function () {
|
|
886
|
-
return (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
887
|
-
watch: {
|
|
888
|
-
path: onPathChange
|
|
889
|
-
}
|
|
890
|
-
}, []);
|
|
891
|
-
}),
|
|
892
|
-
result = _renderHook21.result;
|
|
893
|
-
var cores = result.current;
|
|
894
|
-
var _cores16 = (0, _slicedToArray2["default"])(cores, 2),
|
|
895
|
-
_cores16$ = _cores16[1],
|
|
896
|
-
setPath = _cores16$.setPath,
|
|
897
|
-
setEntity = _cores16$.setEntity;
|
|
898
|
-
(0, _globals.expect)(onPathChange1).toHaveBeenCalledTimes(0);
|
|
899
|
-
(0, _react.act)(function () {
|
|
900
|
-
setPath(PATH_1);
|
|
901
|
-
setEntity({
|
|
902
|
-
size: 5000
|
|
903
|
-
});
|
|
904
|
-
onPathChange = onPathChange2;
|
|
905
|
-
});
|
|
906
|
-
(0, _globals.expect)(onPathChange1).toHaveBeenCalledTimes(1);
|
|
907
|
-
(0, _globals.expect)(onPathChange1).toHaveBeenLastCalledWith({
|
|
908
|
-
fieldPaths: ['path'],
|
|
909
|
-
newEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
910
|
-
path: PATH_1,
|
|
911
|
-
ext: EXT_1
|
|
912
|
-
}),
|
|
913
|
-
oldEntity: defaultFile,
|
|
914
|
-
newValue: PATH_1,
|
|
915
|
-
oldValue: ''
|
|
916
|
-
});
|
|
917
|
-
(0, _react.act)(function () {
|
|
918
|
-
setPath('');
|
|
919
|
-
});
|
|
920
|
-
(0, _globals.expect)(onPathChange2).toHaveBeenCalledTimes(0);
|
|
921
|
-
(0, _globals.expect)(onPathChange1).toHaveBeenCalledTimes(2);
|
|
922
|
-
(0, _globals.expect)(onPathChange1).toHaveBeenLastCalledWith({
|
|
923
|
-
fieldPaths: ['path'],
|
|
924
|
-
newEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
925
|
-
size: 5000
|
|
926
|
-
}),
|
|
927
|
-
oldEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
928
|
-
path: PATH_1,
|
|
929
|
-
ext: EXT_1,
|
|
930
|
-
size: 5000
|
|
931
|
-
}),
|
|
932
|
-
newValue: '',
|
|
933
|
-
oldValue: PATH_1
|
|
934
|
-
});
|
|
935
|
-
});
|
|
936
|
-
(0, _globals.test)('`options.watch` should work with array field path of array', function () {
|
|
937
|
-
var onExtChange = _globals.jest.fn();
|
|
938
|
-
var onSizeChange = _globals.jest.fn();
|
|
939
|
-
var _renderHook22 = (0, _react.renderHook)(function () {
|
|
940
|
-
return (0, _.useUseCase)({}, fieldPathUseCase, {
|
|
941
|
-
watch: {
|
|
942
|
-
'list.ext': onExtChange,
|
|
943
|
-
'list.size': onSizeChange
|
|
944
|
-
}
|
|
945
|
-
});
|
|
946
|
-
}),
|
|
947
|
-
result = _renderHook22.result;
|
|
948
|
-
var cores = result.current;
|
|
949
|
-
var _cores17 = (0, _slicedToArray2["default"])(cores, 2),
|
|
950
|
-
setEntity = _cores17[1].setEntity;
|
|
951
|
-
(0, _react.act)(function () {
|
|
952
|
-
setEntity({
|
|
953
|
-
list: [defaultFile]
|
|
954
|
-
});
|
|
955
|
-
});
|
|
956
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(1);
|
|
957
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(1);
|
|
958
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledWith({
|
|
959
|
-
fieldPaths: ['list', '0', 'ext'],
|
|
960
|
-
newEntity: {
|
|
961
|
-
list: [defaultFile]
|
|
962
|
-
},
|
|
963
|
-
oldEntity: {},
|
|
964
|
-
newValue: '',
|
|
965
|
-
oldValue: void 0
|
|
966
|
-
});
|
|
967
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledWith({
|
|
968
|
-
fieldPaths: ['list', '0', 'size'],
|
|
969
|
-
newEntity: {
|
|
970
|
-
list: [defaultFile]
|
|
971
|
-
},
|
|
972
|
-
oldEntity: {},
|
|
973
|
-
newValue: 0,
|
|
974
|
-
oldValue: void 0
|
|
975
|
-
});
|
|
976
|
-
(0, _react.act)(function () {
|
|
977
|
-
setEntity({
|
|
978
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
979
|
-
ext: EXT_1
|
|
980
|
-
})]
|
|
981
|
-
});
|
|
982
|
-
});
|
|
983
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(2);
|
|
984
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(1);
|
|
985
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledWith({
|
|
986
|
-
fieldPaths: ['list', '0', 'ext'],
|
|
987
|
-
newEntity: {
|
|
988
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
989
|
-
ext: EXT_1
|
|
990
|
-
})]
|
|
991
|
-
},
|
|
992
|
-
oldEntity: {
|
|
993
|
-
list: [defaultFile]
|
|
994
|
-
},
|
|
995
|
-
newValue: EXT_1,
|
|
996
|
-
oldValue: ''
|
|
997
|
-
});
|
|
998
|
-
(0, _react.act)(function () {
|
|
999
|
-
setEntity({
|
|
1000
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1001
|
-
ext: EXT_1
|
|
1002
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1003
|
-
ext: EXT_2
|
|
1004
|
-
})]
|
|
1005
|
-
});
|
|
1006
|
-
});
|
|
1007
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(3);
|
|
1008
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(2);
|
|
1009
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledWith({
|
|
1010
|
-
fieldPaths: ['list', '1', 'ext'],
|
|
1011
|
-
newEntity: {
|
|
1012
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1013
|
-
ext: EXT_1
|
|
1014
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1015
|
-
ext: EXT_2
|
|
1016
|
-
})]
|
|
1017
|
-
},
|
|
1018
|
-
oldEntity: {
|
|
1019
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1020
|
-
ext: EXT_1
|
|
1021
|
-
})]
|
|
1022
|
-
},
|
|
1023
|
-
newValue: EXT_2,
|
|
1024
|
-
oldValue: void 0
|
|
1025
|
-
});
|
|
1026
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledWith({
|
|
1027
|
-
fieldPaths: ['list', '1', 'size'],
|
|
1028
|
-
newEntity: {
|
|
1029
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1030
|
-
ext: EXT_1
|
|
1031
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1032
|
-
ext: EXT_2
|
|
1033
|
-
})]
|
|
1034
|
-
},
|
|
1035
|
-
oldEntity: {
|
|
1036
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1037
|
-
ext: EXT_1
|
|
1038
|
-
})]
|
|
1039
|
-
},
|
|
1040
|
-
newValue: 0,
|
|
1041
|
-
oldValue: void 0
|
|
1042
|
-
});
|
|
1043
|
-
(0, _react.act)(function () {
|
|
1044
|
-
setEntity({
|
|
1045
|
-
nestedList: []
|
|
1046
|
-
});
|
|
1047
|
-
});
|
|
1048
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(3);
|
|
1049
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(2);
|
|
1050
|
-
(0, _react.act)(function () {
|
|
1051
|
-
setEntity(function () {
|
|
1052
|
-
return {
|
|
1053
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1054
|
-
ext: EXT_2
|
|
1055
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1056
|
-
ext: EXT_1
|
|
1057
|
-
}), defaultFile]
|
|
1058
|
-
};
|
|
1059
|
-
});
|
|
1060
|
-
});
|
|
1061
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(6);
|
|
1062
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(3);
|
|
1063
|
-
(0, _globals.expect)(onExtChange).toHaveBeenNthCalledWith(4, {
|
|
1064
|
-
fieldPaths: ['list', '0', 'ext'],
|
|
1065
|
-
newEntity: {
|
|
1066
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1067
|
-
ext: EXT_2
|
|
1068
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1069
|
-
ext: EXT_1
|
|
1070
|
-
}), defaultFile]
|
|
1071
|
-
},
|
|
1072
|
-
oldEntity: {
|
|
1073
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1074
|
-
ext: EXT_1
|
|
1075
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1076
|
-
ext: EXT_2
|
|
1077
|
-
})],
|
|
1078
|
-
nestedList: []
|
|
1079
|
-
},
|
|
1080
|
-
newValue: EXT_2,
|
|
1081
|
-
oldValue: EXT_1
|
|
1082
|
-
});
|
|
1083
|
-
(0, _globals.expect)(onExtChange).toHaveBeenNthCalledWith(5, {
|
|
1084
|
-
fieldPaths: ['list', '1', 'ext'],
|
|
1085
|
-
newEntity: {
|
|
1086
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1087
|
-
ext: EXT_2
|
|
1088
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1089
|
-
ext: EXT_1
|
|
1090
|
-
}), defaultFile]
|
|
1091
|
-
},
|
|
1092
|
-
oldEntity: {
|
|
1093
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1094
|
-
ext: EXT_1
|
|
1095
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1096
|
-
ext: EXT_2
|
|
1097
|
-
})],
|
|
1098
|
-
nestedList: []
|
|
1099
|
-
},
|
|
1100
|
-
newValue: EXT_1,
|
|
1101
|
-
oldValue: EXT_2
|
|
1102
|
-
});
|
|
1103
|
-
(0, _globals.expect)(onExtChange).toHaveBeenNthCalledWith(6, {
|
|
1104
|
-
fieldPaths: ['list', '2', 'ext'],
|
|
1105
|
-
newEntity: {
|
|
1106
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1107
|
-
ext: EXT_2
|
|
1108
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1109
|
-
ext: EXT_1
|
|
1110
|
-
}), defaultFile]
|
|
1111
|
-
},
|
|
1112
|
-
oldEntity: {
|
|
1113
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1114
|
-
ext: EXT_1
|
|
1115
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1116
|
-
ext: EXT_2
|
|
1117
|
-
})],
|
|
1118
|
-
nestedList: []
|
|
1119
|
-
},
|
|
1120
|
-
newValue: '',
|
|
1121
|
-
oldValue: void 0
|
|
1122
|
-
});
|
|
1123
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledWith({
|
|
1124
|
-
fieldPaths: ['list', '2', 'size'],
|
|
1125
|
-
newEntity: {
|
|
1126
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1127
|
-
ext: EXT_2
|
|
1128
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1129
|
-
ext: EXT_1
|
|
1130
|
-
}), defaultFile]
|
|
1131
|
-
},
|
|
1132
|
-
oldEntity: {
|
|
1133
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1134
|
-
ext: EXT_1
|
|
1135
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1136
|
-
ext: EXT_2
|
|
1137
|
-
})],
|
|
1138
|
-
nestedList: []
|
|
1139
|
-
},
|
|
1140
|
-
newValue: 0,
|
|
1141
|
-
oldValue: void 0
|
|
1142
|
-
});
|
|
1143
|
-
(0, _react.act)(function () {
|
|
1144
|
-
setEntity(function () {
|
|
1145
|
-
return {};
|
|
1146
|
-
});
|
|
1147
|
-
});
|
|
1148
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(9);
|
|
1149
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(6);
|
|
1150
|
-
(0, _globals.expect)(onExtChange).toHaveBeenNthCalledWith(7, {
|
|
1151
|
-
fieldPaths: ['list', '0', 'ext'],
|
|
1152
|
-
newEntity: {},
|
|
1153
|
-
oldEntity: {
|
|
1154
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1155
|
-
ext: EXT_2
|
|
1156
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1157
|
-
ext: EXT_1
|
|
1158
|
-
}), defaultFile]
|
|
1159
|
-
},
|
|
1160
|
-
newValue: void 0,
|
|
1161
|
-
oldValue: EXT_2
|
|
1162
|
-
});
|
|
1163
|
-
(0, _globals.expect)(onExtChange).toHaveBeenNthCalledWith(8, {
|
|
1164
|
-
fieldPaths: ['list', '1', 'ext'],
|
|
1165
|
-
newEntity: {},
|
|
1166
|
-
oldEntity: {
|
|
1167
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1168
|
-
ext: EXT_2
|
|
1169
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1170
|
-
ext: EXT_1
|
|
1171
|
-
}), defaultFile]
|
|
1172
|
-
},
|
|
1173
|
-
newValue: void 0,
|
|
1174
|
-
oldValue: EXT_1
|
|
1175
|
-
});
|
|
1176
|
-
(0, _globals.expect)(onExtChange).toHaveBeenNthCalledWith(9, {
|
|
1177
|
-
fieldPaths: ['list', '2', 'ext'],
|
|
1178
|
-
newEntity: {},
|
|
1179
|
-
oldEntity: {
|
|
1180
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1181
|
-
ext: EXT_2
|
|
1182
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1183
|
-
ext: EXT_1
|
|
1184
|
-
}), defaultFile]
|
|
1185
|
-
},
|
|
1186
|
-
newValue: void 0,
|
|
1187
|
-
oldValue: ''
|
|
1188
|
-
});
|
|
1189
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenNthCalledWith(4, {
|
|
1190
|
-
fieldPaths: ['list', '0', 'size'],
|
|
1191
|
-
newEntity: {},
|
|
1192
|
-
oldEntity: {
|
|
1193
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1194
|
-
ext: EXT_2
|
|
1195
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1196
|
-
ext: EXT_1
|
|
1197
|
-
}), defaultFile]
|
|
1198
|
-
},
|
|
1199
|
-
newValue: void 0,
|
|
1200
|
-
oldValue: 0
|
|
1201
|
-
});
|
|
1202
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenNthCalledWith(5, {
|
|
1203
|
-
fieldPaths: ['list', '1', 'size'],
|
|
1204
|
-
newEntity: {},
|
|
1205
|
-
oldEntity: {
|
|
1206
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1207
|
-
ext: EXT_2
|
|
1208
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1209
|
-
ext: EXT_1
|
|
1210
|
-
}), defaultFile]
|
|
1211
|
-
},
|
|
1212
|
-
newValue: void 0,
|
|
1213
|
-
oldValue: 0
|
|
1214
|
-
});
|
|
1215
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenNthCalledWith(6, {
|
|
1216
|
-
fieldPaths: ['list', '2', 'size'],
|
|
1217
|
-
newEntity: {},
|
|
1218
|
-
oldEntity: {
|
|
1219
|
-
list: [_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1220
|
-
ext: EXT_2
|
|
1221
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1222
|
-
ext: EXT_1
|
|
1223
|
-
}), defaultFile]
|
|
1224
|
-
},
|
|
1225
|
-
newValue: void 0,
|
|
1226
|
-
oldValue: 0
|
|
1227
|
-
});
|
|
1228
|
-
});
|
|
1229
|
-
(0, _globals.test)('`options.watch` should work with field path of array length', function () {
|
|
1230
|
-
var onEntityLengthChange = _globals.jest.fn();
|
|
1231
|
-
var onListLengthChange = _globals.jest.fn();
|
|
1232
|
-
var lengthUseCase = function lengthUseCase() {
|
|
1233
|
-
return (0, _usecases.entityUseCase)();
|
|
1234
|
-
};
|
|
1235
|
-
var _renderHook23 = (0, _react.renderHook)(function () {
|
|
1236
|
-
return (0, _.useUseCase)([], lengthUseCase, {
|
|
1237
|
-
watch: {
|
|
1238
|
-
length: onEntityLengthChange,
|
|
1239
|
-
'list.length': onListLengthChange
|
|
1240
|
-
}
|
|
1241
|
-
});
|
|
1242
|
-
}),
|
|
1243
|
-
result = _renderHook23.result;
|
|
1244
|
-
var cores = result.current;
|
|
1245
|
-
var _cores18 = (0, _slicedToArray2["default"])(cores, 2),
|
|
1246
|
-
setEntity = _cores18[1].setEntity;
|
|
1247
|
-
(0, _globals.expect)(onEntityLengthChange).toHaveBeenCalledTimes(0);
|
|
1248
|
-
(0, _globals.expect)(onListLengthChange).toHaveBeenCalledTimes(0);
|
|
1249
|
-
(0, _react.act)(function () {
|
|
1250
|
-
setEntity([{
|
|
1251
|
-
list: [defaultFile, defaultFile]
|
|
1252
|
-
}]);
|
|
1253
|
-
});
|
|
1254
|
-
(0, _globals.expect)(onEntityLengthChange).toHaveBeenCalledTimes(1);
|
|
1255
|
-
(0, _globals.expect)(onListLengthChange).toHaveBeenCalledTimes(1);
|
|
1256
|
-
(0, _globals.expect)(onEntityLengthChange).toHaveBeenCalledWith({
|
|
1257
|
-
fieldPaths: ['length'],
|
|
1258
|
-
newEntity: [{
|
|
1259
|
-
list: [defaultFile, defaultFile]
|
|
1260
|
-
}],
|
|
1261
|
-
oldEntity: [],
|
|
1262
|
-
newValue: 1,
|
|
1263
|
-
oldValue: 0
|
|
1264
|
-
});
|
|
1265
|
-
(0, _globals.expect)(onListLengthChange).toHaveBeenCalledWith({
|
|
1266
|
-
fieldPaths: ['0', 'list', 'length'],
|
|
1267
|
-
newEntity: [{
|
|
1268
|
-
list: [defaultFile, defaultFile]
|
|
1269
|
-
}],
|
|
1270
|
-
oldEntity: [],
|
|
1271
|
-
newValue: 2,
|
|
1272
|
-
oldValue: void 0
|
|
1273
|
-
});
|
|
1274
|
-
});
|
|
1275
|
-
(0, _globals.test)('`options.watch` should work with field path of nested array', function () {
|
|
1276
|
-
var onChange = _globals.jest.fn();
|
|
1277
|
-
var _renderHook24 = (0, _react.renderHook)(function () {
|
|
1278
|
-
return (0, _.useUseCase)({}, fieldPathUseCase, {
|
|
1279
|
-
watch: {
|
|
1280
|
-
'nestedList.size': onChange
|
|
1281
|
-
}
|
|
1282
|
-
});
|
|
1283
|
-
}),
|
|
1284
|
-
result = _renderHook24.result;
|
|
1285
|
-
var cores = result.current;
|
|
1286
|
-
var _cores19 = (0, _slicedToArray2["default"])(cores, 2),
|
|
1287
|
-
setEntity = _cores19[1].setEntity;
|
|
1288
|
-
(0, _globals.expect)(onChange).toHaveBeenCalledTimes(0);
|
|
1289
|
-
(0, _react.act)(function () {
|
|
1290
|
-
setEntity({
|
|
1291
|
-
nestedList: [[[defaultFile]]]
|
|
1292
|
-
});
|
|
1293
|
-
});
|
|
1294
|
-
(0, _globals.expect)(onChange).toHaveBeenCalledTimes(1);
|
|
1295
|
-
(0, _globals.expect)(onChange).toHaveBeenCalledWith({
|
|
1296
|
-
fieldPaths: ['nestedList', '0', '0', '0', 'size'],
|
|
1297
|
-
newEntity: {
|
|
1298
|
-
nestedList: [[[defaultFile]]]
|
|
1299
|
-
},
|
|
1300
|
-
oldEntity: {},
|
|
1301
|
-
newValue: 0,
|
|
1302
|
-
oldValue: void 0
|
|
1303
|
-
});
|
|
1304
|
-
(0, _react.act)(function () {
|
|
1305
|
-
setEntity({
|
|
1306
|
-
nestedList: [[[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1307
|
-
size: 100
|
|
1308
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1309
|
-
size: 200
|
|
1310
|
-
})]], [[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1311
|
-
size: 300
|
|
1312
|
-
})]]]
|
|
1313
|
-
});
|
|
1314
|
-
});
|
|
1315
|
-
(0, _globals.expect)(onChange).toHaveBeenCalledTimes(4);
|
|
1316
|
-
(0, _globals.expect)(onChange).toHaveBeenNthCalledWith(2, {
|
|
1317
|
-
fieldPaths: ['nestedList', '0', '0', '0', 'size'],
|
|
1318
|
-
newEntity: {
|
|
1319
|
-
nestedList: [[[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1320
|
-
size: 100
|
|
1321
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1322
|
-
size: 200
|
|
1323
|
-
})]], [[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1324
|
-
size: 300
|
|
1325
|
-
})]]]
|
|
1326
|
-
},
|
|
1327
|
-
oldEntity: {
|
|
1328
|
-
nestedList: [[[defaultFile]]]
|
|
1329
|
-
},
|
|
1330
|
-
newValue: 100,
|
|
1331
|
-
oldValue: 0
|
|
1332
|
-
});
|
|
1333
|
-
(0, _globals.expect)(onChange).toHaveBeenNthCalledWith(3, {
|
|
1334
|
-
fieldPaths: ['nestedList', '0', '0', '1', 'size'],
|
|
1335
|
-
newEntity: {
|
|
1336
|
-
nestedList: [[[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1337
|
-
size: 100
|
|
1338
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1339
|
-
size: 200
|
|
1340
|
-
})]], [[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1341
|
-
size: 300
|
|
1342
|
-
})]]]
|
|
1343
|
-
},
|
|
1344
|
-
oldEntity: {
|
|
1345
|
-
nestedList: [[[defaultFile]]]
|
|
1346
|
-
},
|
|
1347
|
-
newValue: 200,
|
|
1348
|
-
oldValue: void 0
|
|
1349
|
-
});
|
|
1350
|
-
(0, _globals.expect)(onChange).toHaveBeenNthCalledWith(4, {
|
|
1351
|
-
fieldPaths: ['nestedList', '1', '0', '0', 'size'],
|
|
1352
|
-
newEntity: {
|
|
1353
|
-
nestedList: [[[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1354
|
-
size: 100
|
|
1355
|
-
}), _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1356
|
-
size: 200
|
|
1357
|
-
})]], [[_objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1358
|
-
size: 300
|
|
1359
|
-
})]]]
|
|
1360
|
-
},
|
|
1361
|
-
oldEntity: {
|
|
1362
|
-
nestedList: [[[defaultFile]]]
|
|
1363
|
-
},
|
|
1364
|
-
newValue: 300,
|
|
1365
|
-
oldValue: void 0
|
|
1366
|
-
});
|
|
1367
|
-
});
|
|
1368
|
-
(0, _globals.test)('`options.watch` should work with field path of object', function () {
|
|
1369
|
-
var onExtChange = _globals.jest.fn();
|
|
1370
|
-
var onSizeChange = _globals.jest.fn();
|
|
1371
|
-
var _renderHook25 = (0, _react.renderHook)(function () {
|
|
1372
|
-
return (0, _.useUseCase)({}, fieldPathUseCase, {
|
|
1373
|
-
watch: {
|
|
1374
|
-
'obj.file.ext': onExtChange,
|
|
1375
|
-
'obj.file.size': onSizeChange
|
|
1376
|
-
}
|
|
1377
|
-
});
|
|
1378
|
-
}),
|
|
1379
|
-
result = _renderHook25.result;
|
|
1380
|
-
var cores = result.current;
|
|
1381
|
-
var _cores20 = (0, _slicedToArray2["default"])(cores, 2),
|
|
1382
|
-
setEntity = _cores20[1].setEntity;
|
|
1383
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(0);
|
|
1384
|
-
(0, _react.act)(function () {
|
|
1385
|
-
setEntity({
|
|
1386
|
-
obj: {
|
|
1387
|
-
file: {
|
|
1388
|
-
ext: EXT_1
|
|
1389
|
-
}
|
|
1390
|
-
}
|
|
1391
|
-
});
|
|
1392
|
-
});
|
|
1393
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(1);
|
|
1394
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(0);
|
|
1395
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledWith({
|
|
1396
|
-
fieldPaths: ['obj', 'file', 'ext'],
|
|
1397
|
-
newEntity: {
|
|
1398
|
-
obj: {
|
|
1399
|
-
file: {
|
|
1400
|
-
ext: EXT_1
|
|
1401
|
-
}
|
|
1402
|
-
}
|
|
1403
|
-
},
|
|
1404
|
-
oldEntity: {},
|
|
1405
|
-
newValue: EXT_1,
|
|
1406
|
-
oldValue: void 0
|
|
1407
|
-
});
|
|
1408
|
-
(0, _react.act)(function () {
|
|
1409
|
-
setEntity(function () {
|
|
1410
|
-
return {};
|
|
1411
|
-
});
|
|
1412
|
-
});
|
|
1413
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(2);
|
|
1414
|
-
(0, _globals.expect)(onSizeChange).toHaveBeenCalledTimes(0);
|
|
1415
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledWith({
|
|
1416
|
-
fieldPaths: ['obj', 'file', 'ext'],
|
|
1417
|
-
newEntity: {},
|
|
1418
|
-
oldEntity: {
|
|
1419
|
-
obj: {
|
|
1420
|
-
file: {
|
|
1421
|
-
ext: EXT_1
|
|
1422
|
-
}
|
|
1423
|
-
}
|
|
1424
|
-
},
|
|
1425
|
-
newValue: void 0,
|
|
1426
|
-
oldValue: EXT_1
|
|
1427
|
-
});
|
|
780
|
+
(0, _globals.expect)(onPathChange2).toHaveBeenLastCalledWith(PATH_2, PATH_1);
|
|
1428
781
|
});
|
|
1429
782
|
(0, _globals.test)('multiple `Provider` should work', function () {
|
|
1430
783
|
var onNumberMount = _globals.jest.fn();
|
|
@@ -1479,28 +832,28 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1479
832
|
});
|
|
1480
833
|
(0, _globals.describe)('`useUseCase` should work the same as `ModeCoreCollectionHook`', function () {
|
|
1481
834
|
_globals.test.each([_UseCaseModes.UseCaseModes.Normal, _UseCaseModes.UseCaseModes.Stateless])('[mode=%s]: check context type', function (mode) {
|
|
1482
|
-
var
|
|
835
|
+
var _renderHook19 = (0, _react.renderHook)(function () {
|
|
1483
836
|
return (0, _.useUseCase)(defaultFile, fileUseCase, mode);
|
|
1484
837
|
}),
|
|
1485
|
-
result =
|
|
838
|
+
result = _renderHook19.result;
|
|
1486
839
|
var cores = result.current;
|
|
1487
840
|
(0, _globals.expect)(Array.isArray(cores)).toBe(true);
|
|
1488
841
|
(0, _globals.expect)(cores).toHaveLength(3);
|
|
1489
842
|
});
|
|
1490
843
|
(0, _globals.test)('stateless mode should not generate new reducers when `yeild entity`', function () {
|
|
1491
844
|
var onUpdate = _globals.jest.fn();
|
|
1492
|
-
var
|
|
845
|
+
var _renderHook20 = (0, _react.renderHook)(function () {
|
|
1493
846
|
var file = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultFile;
|
|
1494
847
|
(0, _ahooks.useUpdateEffect)(function () {
|
|
1495
848
|
onUpdate();
|
|
1496
849
|
});
|
|
1497
850
|
return (0, _.useUseCase)(file, fileUseCase, _UseCaseModes.UseCaseModes.Stateless);
|
|
1498
851
|
}),
|
|
1499
|
-
result =
|
|
1500
|
-
rerender =
|
|
852
|
+
result = _renderHook20.result,
|
|
853
|
+
rerender = _renderHook20.rerender;
|
|
1501
854
|
var cores = result.current;
|
|
1502
|
-
var
|
|
1503
|
-
setPath =
|
|
855
|
+
var _cores13 = (0, _slicedToArray2["default"])(cores, 2),
|
|
856
|
+
setPath = _cores13[1].setPath;
|
|
1504
857
|
setPath(PATH_1);
|
|
1505
858
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
1506
859
|
(0, _globals.expect)(result.current[0].path).toBe('');
|
|
@@ -1513,16 +866,16 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1513
866
|
});
|
|
1514
867
|
(0, _globals.test)('stateless mode should not trigger update when after `yield entity`', function () {
|
|
1515
868
|
var onUpdate = _globals.jest.fn();
|
|
1516
|
-
var
|
|
869
|
+
var _renderHook21 = (0, _react.renderHook)(function () {
|
|
1517
870
|
(0, _ahooks.useUpdateEffect)(function () {
|
|
1518
871
|
onUpdate();
|
|
1519
872
|
});
|
|
1520
873
|
return (0, _.useUseCase)(defaultFile, fileUseCase, _UseCaseModes.UseCaseModes.Stateless);
|
|
1521
874
|
}),
|
|
1522
|
-
result =
|
|
875
|
+
result = _renderHook21.result;
|
|
1523
876
|
var cores = result.current;
|
|
1524
|
-
var
|
|
1525
|
-
reducers =
|
|
877
|
+
var _cores14 = (0, _slicedToArray2["default"])(cores, 2),
|
|
878
|
+
reducers = _cores14[1];
|
|
1526
879
|
var setPath = reducers.setPath;
|
|
1527
880
|
(0, _react.act)(function () {
|
|
1528
881
|
setPath(PATH_1);
|
|
@@ -1751,130 +1104,6 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1751
1104
|
_react.fireEvent.click(_react.screen.getByText(updateButtonText));
|
|
1752
1105
|
(0, _globals.expect)(addReducer).toHaveBeenCalledTimes(3);
|
|
1753
1106
|
});
|
|
1754
|
-
_globals.test.each([_UseCaseModes.UseCaseModes.Normal, _UseCaseModes.UseCaseModes.Stateless])('[mode=%s]: `options.watch` should be updated in child element after `deps` changed', function (mode) {
|
|
1755
|
-
var onFirstExtChange = _globals.jest.fn();
|
|
1756
|
-
var onSecondExtChange = _globals.jest.fn();
|
|
1757
|
-
var onExtChange = onFirstExtChange;
|
|
1758
|
-
var deps = [1];
|
|
1759
|
-
var firstButtonText = 'first button';
|
|
1760
|
-
var secondButtonText = 'second button';
|
|
1761
|
-
var A = function A() {
|
|
1762
|
-
(0, _.useUseCase)(fileUseCase, {
|
|
1763
|
-
watch: {
|
|
1764
|
-
ext: onExtChange
|
|
1765
|
-
}
|
|
1766
|
-
}, deps);
|
|
1767
|
-
return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
|
|
1768
|
-
};
|
|
1769
|
-
var B = function B() {
|
|
1770
|
-
var _useState7 = (0, _react2.useState)(defaultFile),
|
|
1771
|
-
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
1772
|
-
file = _useState8[0],
|
|
1773
|
-
setFile = _useState8[1];
|
|
1774
|
-
var _useUseCase38 = (0, _.useUseCase)(file, fileUseCase, mode, {
|
|
1775
|
-
onChange: function onChange(newFile) {
|
|
1776
|
-
if ((mode & _UseCaseModes.UseCaseModes.Stateless) !== _UseCaseModes.UseCaseModes.Stateless) {
|
|
1777
|
-
return;
|
|
1778
|
-
}
|
|
1779
|
-
// `stateless` 不会保存状态,所以需要手动保存
|
|
1780
|
-
setFile(newFile);
|
|
1781
|
-
}
|
|
1782
|
-
}),
|
|
1783
|
-
_useUseCase39 = (0, _slicedToArray2["default"])(_useUseCase38, 3),
|
|
1784
|
-
setPath = _useUseCase39[1].setPath,
|
|
1785
|
-
Provider = _useUseCase39[2];
|
|
1786
|
-
var onFirstClick = function onFirstClick() {
|
|
1787
|
-
setPath(PATH_1);
|
|
1788
|
-
deps = [2];
|
|
1789
|
-
onExtChange = onSecondExtChange;
|
|
1790
|
-
};
|
|
1791
|
-
var onSecondClick = function onSecondClick() {
|
|
1792
|
-
setPath('');
|
|
1793
|
-
};
|
|
1794
|
-
return (0, _jsxRuntime.jsxs)(Provider, {
|
|
1795
|
-
children: [(0, _jsxRuntime.jsx)(A, {}), (0, _jsxRuntime.jsx)("button", {
|
|
1796
|
-
onClick: onFirstClick,
|
|
1797
|
-
children: firstButtonText
|
|
1798
|
-
}), (0, _jsxRuntime.jsx)("button", {
|
|
1799
|
-
onClick: onSecondClick,
|
|
1800
|
-
children: secondButtonText
|
|
1801
|
-
})]
|
|
1802
|
-
});
|
|
1803
|
-
};
|
|
1804
|
-
(0, _react.render)((0, _jsxRuntime.jsx)(B, {}));
|
|
1805
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenCalledTimes(0);
|
|
1806
|
-
_react.fireEvent.click(_react.screen.getByText(firstButtonText));
|
|
1807
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenCalledTimes(1);
|
|
1808
|
-
(0, _globals.expect)(onSecondExtChange).toHaveBeenCalledTimes(0);
|
|
1809
|
-
_react.fireEvent.click(_react.screen.getByText(secondButtonText));
|
|
1810
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenCalledTimes(1);
|
|
1811
|
-
(0, _globals.expect)(onSecondExtChange).toHaveBeenCalledTimes(1);
|
|
1812
|
-
(0, _globals.expect)(onSecondExtChange).toHaveBeenLastCalledWith({
|
|
1813
|
-
fieldPaths: ['ext'],
|
|
1814
|
-
newEntity: defaultFile,
|
|
1815
|
-
oldEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1816
|
-
ext: EXT_1,
|
|
1817
|
-
path: PATH_1
|
|
1818
|
-
}),
|
|
1819
|
-
newValue: '',
|
|
1820
|
-
oldValue: EXT_1
|
|
1821
|
-
});
|
|
1822
|
-
});
|
|
1823
|
-
_globals.test.each([_UseCaseModes.UseCaseModes.Normal, _UseCaseModes.UseCaseModes.Stateless])('`options.watch` should not be updated in child element if `deps` has not changed', function (mode) {
|
|
1824
|
-
var onFirstExtChange = _globals.jest.fn();
|
|
1825
|
-
var onSecondExtChange = _globals.jest.fn();
|
|
1826
|
-
var onExtChange = onFirstExtChange;
|
|
1827
|
-
var firstButtonText = 'first button';
|
|
1828
|
-
var secondButtonText = 'second button';
|
|
1829
|
-
var A = function A() {
|
|
1830
|
-
(0, _.useUseCase)(fileUseCase, {
|
|
1831
|
-
watch: {
|
|
1832
|
-
ext: onExtChange
|
|
1833
|
-
}
|
|
1834
|
-
}, []);
|
|
1835
|
-
return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
|
|
1836
|
-
};
|
|
1837
|
-
var B = function B() {
|
|
1838
|
-
var _useUseCase40 = (0, _.useUseCase)(defaultFile, fileUseCase, mode),
|
|
1839
|
-
_useUseCase41 = (0, _slicedToArray2["default"])(_useUseCase40, 3),
|
|
1840
|
-
setPath = _useUseCase41[1].setPath,
|
|
1841
|
-
Provider = _useUseCase41[2];
|
|
1842
|
-
var onFirstClick = function onFirstClick() {
|
|
1843
|
-
setPath(PATH_1);
|
|
1844
|
-
onExtChange = onSecondExtChange;
|
|
1845
|
-
};
|
|
1846
|
-
var onSecondClick = function onSecondClick() {
|
|
1847
|
-
setPath('');
|
|
1848
|
-
};
|
|
1849
|
-
return (0, _jsxRuntime.jsxs)(Provider, {
|
|
1850
|
-
children: [(0, _jsxRuntime.jsx)(A, {}), (0, _jsxRuntime.jsx)("button", {
|
|
1851
|
-
onClick: onFirstClick,
|
|
1852
|
-
children: firstButtonText
|
|
1853
|
-
}), (0, _jsxRuntime.jsx)("button", {
|
|
1854
|
-
onClick: onSecondClick,
|
|
1855
|
-
children: secondButtonText
|
|
1856
|
-
})]
|
|
1857
|
-
});
|
|
1858
|
-
};
|
|
1859
|
-
(0, _react.render)((0, _jsxRuntime.jsx)(B, {}));
|
|
1860
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenCalledTimes(0);
|
|
1861
|
-
_react.fireEvent.click(_react.screen.getByText(firstButtonText));
|
|
1862
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenCalledTimes(1);
|
|
1863
|
-
(0, _globals.expect)(onSecondExtChange).toHaveBeenCalledTimes(0);
|
|
1864
|
-
_react.fireEvent.click(_react.screen.getByText(secondButtonText));
|
|
1865
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenCalledTimes(2);
|
|
1866
|
-
(0, _globals.expect)(onSecondExtChange).toHaveBeenCalledTimes(0);
|
|
1867
|
-
(0, _globals.expect)(onFirstExtChange).toHaveBeenLastCalledWith({
|
|
1868
|
-
fieldPaths: ['ext'],
|
|
1869
|
-
newEntity: defaultFile,
|
|
1870
|
-
oldEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1871
|
-
ext: EXT_1,
|
|
1872
|
-
path: PATH_1
|
|
1873
|
-
}),
|
|
1874
|
-
newValue: '',
|
|
1875
|
-
oldValue: EXT_1
|
|
1876
|
-
});
|
|
1877
|
-
});
|
|
1878
1107
|
(0, _globals.test)('`options.onChange` event should be trigger in orders', function () {
|
|
1879
1108
|
var changeTimes = 0;
|
|
1880
1109
|
var updateChangeTimes = function updateChangeTimes() {
|
|
@@ -1900,12 +1129,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1900
1129
|
return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
|
|
1901
1130
|
};
|
|
1902
1131
|
var C = function C() {
|
|
1903
|
-
var
|
|
1132
|
+
var _useUseCase38 = (0, _.useUseCase)(defaultFile, fileUseCase, {
|
|
1904
1133
|
onChange: onChangeC
|
|
1905
1134
|
}),
|
|
1906
|
-
|
|
1907
|
-
setPath =
|
|
1908
|
-
Provider =
|
|
1135
|
+
_useUseCase39 = (0, _slicedToArray2["default"])(_useUseCase38, 3),
|
|
1136
|
+
setPath = _useUseCase39[1].setPath,
|
|
1137
|
+
Provider = _useUseCase39[2];
|
|
1909
1138
|
var onFirstClick = function onFirstClick() {
|
|
1910
1139
|
setPath(PATH_1);
|
|
1911
1140
|
};
|
|
@@ -1925,139 +1154,103 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
1925
1154
|
(0, _globals.expect)(onChangeB).toHaveReturnedWith(1);
|
|
1926
1155
|
(0, _globals.expect)(onChangeC).toHaveReturnedWith(3);
|
|
1927
1156
|
});
|
|
1928
|
-
(
|
|
1929
|
-
var
|
|
1157
|
+
_globals.test.each([_UseCaseModes.UseCaseModes.Normal, _UseCaseModes.UseCaseModes.Stateless])('[mode=%s]: `options.onChange` should always trigger the latest one in child components', function (mode) {
|
|
1158
|
+
var onFirstChange = _globals.jest.fn();
|
|
1159
|
+
var onSecondChange = _globals.jest.fn();
|
|
1160
|
+
var onChange = onFirstChange;
|
|
1930
1161
|
var firstButtonText = 'first button';
|
|
1162
|
+
var secondButtonText = 'second button';
|
|
1931
1163
|
var A = function A() {
|
|
1932
|
-
(0, _.useUseCase)(fileUseCase, {
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
|
|
1938
|
-
};
|
|
1939
|
-
var B = function B() {
|
|
1940
|
-
var _useUseCase44 = (0, _.useUseCase)(defaultFile, fileUseCase, {}),
|
|
1941
|
-
_useUseCase45 = (0, _slicedToArray2["default"])(_useUseCase44, 3),
|
|
1942
|
-
setPath = _useUseCase45[1].setPath,
|
|
1943
|
-
Provider = _useUseCase45[2];
|
|
1164
|
+
var _useUseCase40 = (0, _.useUseCase)(fileUseCase, {
|
|
1165
|
+
onChange: onChange
|
|
1166
|
+
}),
|
|
1167
|
+
_useUseCase41 = (0, _slicedToArray2["default"])(_useUseCase40, 2),
|
|
1168
|
+
setPath = _useUseCase41[1].setPath;
|
|
1944
1169
|
var onFirstClick = function onFirstClick() {
|
|
1945
1170
|
setPath(PATH_1);
|
|
1171
|
+
onChange = onSecondChange;
|
|
1946
1172
|
};
|
|
1947
|
-
|
|
1948
|
-
|
|
1173
|
+
var onSecondClick = function onSecondClick() {
|
|
1174
|
+
setPath('');
|
|
1175
|
+
};
|
|
1176
|
+
return (0, _jsxRuntime.jsxs)(_react2.Fragment, {
|
|
1177
|
+
children: [(0, _jsxRuntime.jsx)("button", {
|
|
1949
1178
|
onClick: onFirstClick,
|
|
1950
1179
|
children: firstButtonText
|
|
1180
|
+
}), (0, _jsxRuntime.jsx)("button", {
|
|
1181
|
+
onClick: onSecondClick,
|
|
1182
|
+
children: secondButtonText
|
|
1951
1183
|
})]
|
|
1952
1184
|
});
|
|
1953
1185
|
};
|
|
1954
|
-
(0, _react.render)((0, _jsxRuntime.jsx)(B, {}));
|
|
1955
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(0);
|
|
1956
|
-
_react.fireEvent.click(_react.screen.getByText(firstButtonText));
|
|
1957
|
-
(0, _globals.expect)(onExtChange).toHaveBeenCalledTimes(1);
|
|
1958
|
-
(0, _globals.expect)(onExtChange).toHaveBeenLastCalledWith({
|
|
1959
|
-
fieldPaths: ['ext'],
|
|
1960
|
-
newEntity: _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1961
|
-
ext: EXT_1,
|
|
1962
|
-
path: PATH_1
|
|
1963
|
-
}),
|
|
1964
|
-
oldEntity: defaultFile,
|
|
1965
|
-
newValue: EXT_1,
|
|
1966
|
-
oldValue: ''
|
|
1967
|
-
});
|
|
1968
|
-
});
|
|
1969
|
-
(0, _globals.test)('`options.watch` should be trigger in orders', function () {
|
|
1970
|
-
var changeTimes = 0;
|
|
1971
|
-
var updateChangeTimes = function updateChangeTimes(e) {
|
|
1972
|
-
void e;
|
|
1973
|
-
return ++changeTimes;
|
|
1974
|
-
};
|
|
1975
|
-
var onChangeA = _globals.jest.fn(updateChangeTimes);
|
|
1976
|
-
var onChangeB = _globals.jest.fn(updateChangeTimes);
|
|
1977
|
-
var onChangeC = _globals.jest.fn(updateChangeTimes);
|
|
1978
|
-
var buttonText = 'my button';
|
|
1979
|
-
var A = function A(_ref8) {
|
|
1980
|
-
var children = _ref8.children;
|
|
1981
|
-
(0, _.useUseCase)(fileUseCase, {
|
|
1982
|
-
watch: {
|
|
1983
|
-
ext: onChangeA
|
|
1984
|
-
}
|
|
1985
|
-
});
|
|
1986
|
-
return (0, _jsxRuntime.jsx)(_react2.Fragment, {
|
|
1987
|
-
children: children
|
|
1988
|
-
});
|
|
1989
|
-
};
|
|
1990
1186
|
var B = function B() {
|
|
1991
|
-
(0,
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
1187
|
+
var _useState7 = (0, _react2.useState)(defaultFile),
|
|
1188
|
+
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
1189
|
+
file = _useState8[0],
|
|
1190
|
+
setFile = _useState8[1];
|
|
1191
|
+
var _useUseCase42 = (0, _.useUseCase)(file, fileUseCase, mode, {
|
|
1192
|
+
onChange: function onChange(newFile) {
|
|
1193
|
+
if ((mode & _UseCaseModes.UseCaseModes.Stateless) !== _UseCaseModes.UseCaseModes.Stateless) {
|
|
1194
|
+
return;
|
|
1195
|
+
}
|
|
1196
|
+
// `stateless` 不会保存状态,所以需要手动保存
|
|
1197
|
+
setFile(newFile);
|
|
2002
1198
|
}
|
|
2003
1199
|
}),
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
setPath(PATH_1);
|
|
2009
|
-
};
|
|
2010
|
-
return (0, _jsxRuntime.jsxs)(Provider, {
|
|
2011
|
-
children: [(0, _jsxRuntime.jsx)(A, {
|
|
2012
|
-
children: (0, _jsxRuntime.jsx)(B, {})
|
|
2013
|
-
}), (0, _jsxRuntime.jsx)("button", {
|
|
2014
|
-
onClick: onFirstClick,
|
|
2015
|
-
children: buttonText
|
|
2016
|
-
})]
|
|
1200
|
+
_useUseCase43 = (0, _slicedToArray2["default"])(_useUseCase42, 3),
|
|
1201
|
+
Provider = _useUseCase43[2];
|
|
1202
|
+
return (0, _jsxRuntime.jsx)(Provider, {
|
|
1203
|
+
children: (0, _jsxRuntime.jsx)(A, {})
|
|
2017
1204
|
});
|
|
2018
1205
|
};
|
|
2019
|
-
(0, _react.render)((0, _jsxRuntime.jsx)(
|
|
2020
|
-
(0, _globals.expect)(
|
|
2021
|
-
_react.fireEvent.click(_react.screen.getByText(
|
|
2022
|
-
(0, _globals.expect)(
|
|
2023
|
-
(0, _globals.expect)(
|
|
2024
|
-
|
|
1206
|
+
(0, _react.render)((0, _jsxRuntime.jsx)(B, {}));
|
|
1207
|
+
(0, _globals.expect)(onFirstChange).toHaveBeenCalledTimes(0);
|
|
1208
|
+
_react.fireEvent.click(_react.screen.getByText(firstButtonText));
|
|
1209
|
+
(0, _globals.expect)(onFirstChange).toHaveBeenCalledTimes(1);
|
|
1210
|
+
(0, _globals.expect)(onSecondChange).toHaveBeenCalledTimes(0);
|
|
1211
|
+
_react.fireEvent.click(_react.screen.getByText(secondButtonText));
|
|
1212
|
+
(0, _globals.expect)(onFirstChange).toHaveBeenCalledTimes(1);
|
|
1213
|
+
(0, _globals.expect)(onSecondChange).toHaveBeenCalledTimes(1);
|
|
1214
|
+
(0, _globals.expect)(onSecondChange).toHaveBeenLastCalledWith(defaultFile, _objectSpread(_objectSpread({}, defaultFile), {}, {
|
|
1215
|
+
ext: EXT_1,
|
|
1216
|
+
path: PATH_1
|
|
1217
|
+
}));
|
|
2025
1218
|
});
|
|
2026
1219
|
});
|
|
2027
1220
|
(0, _globals.describe)('`useUseCase` should work the same as `useReducers`', function () {
|
|
2028
1221
|
(0, _globals.test)('`entity` should equal `defaultFile`', function () {
|
|
2029
|
-
var
|
|
1222
|
+
var _renderHook22 = (0, _react.renderHook)(function () {
|
|
2030
1223
|
return (0, _.useUseCase)(mathUseCase);
|
|
2031
1224
|
}),
|
|
2032
|
-
result =
|
|
1225
|
+
result = _renderHook22.result;
|
|
2033
1226
|
var reducers = result.current;
|
|
2034
1227
|
(0, _globals.expect)(Array.isArray(reducers)).toBe(false);
|
|
2035
1228
|
});
|
|
2036
1229
|
(0, _globals.test)('returned reducer should work', function () {
|
|
2037
|
-
var
|
|
1230
|
+
var _renderHook23 = (0, _react.renderHook)(function () {
|
|
2038
1231
|
return (0, _.useUseCase)(mathUseCase);
|
|
2039
1232
|
}),
|
|
2040
|
-
result =
|
|
1233
|
+
result = _renderHook23.result;
|
|
2041
1234
|
var reducers = result.current;
|
|
2042
1235
|
var add = reducers.add;
|
|
2043
1236
|
(0, _globals.expect)(add(1, 2)).toBe(3);
|
|
2044
1237
|
});
|
|
2045
1238
|
(0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
|
|
2046
1239
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
2047
|
-
var
|
|
1240
|
+
var _renderHook24 = (0, _react.renderHook)(function () {
|
|
2048
1241
|
return (0, _.useUseCase)(mockUseCase);
|
|
2049
1242
|
}),
|
|
2050
|
-
rerender =
|
|
1243
|
+
rerender = _renderHook24.rerender;
|
|
2051
1244
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
2052
1245
|
rerender();
|
|
2053
1246
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
2054
1247
|
});
|
|
2055
1248
|
(0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
|
|
2056
1249
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
2057
|
-
var
|
|
1250
|
+
var _renderHook25 = (0, _react.renderHook)(function () {
|
|
2058
1251
|
return (0, _.useUseCase)(mockUseCase, {}, [1, 'x']);
|
|
2059
1252
|
}),
|
|
2060
|
-
rerender =
|
|
1253
|
+
rerender = _renderHook25.rerender;
|
|
2061
1254
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
2062
1255
|
rerender();
|
|
2063
1256
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
@@ -2065,10 +1258,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2065
1258
|
(0, _globals.test)('`usecase` should be called if deps has changed', function () {
|
|
2066
1259
|
var i = 0;
|
|
2067
1260
|
var mockUseCase = _globals.jest.fn(mathUseCase);
|
|
2068
|
-
var
|
|
1261
|
+
var _renderHook26 = (0, _react.renderHook)(function () {
|
|
2069
1262
|
return (0, _.useUseCase)(mockUseCase, {}, [i++, 'x']);
|
|
2070
1263
|
}),
|
|
2071
|
-
rerender =
|
|
1264
|
+
rerender = _renderHook26.rerender;
|
|
2072
1265
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
|
|
2073
1266
|
rerender();
|
|
2074
1267
|
(0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(2);
|
|
@@ -2076,8 +1269,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2076
1269
|
(0, _globals.test)('reducer call should not be cached if component is at rendering phase', function () {
|
|
2077
1270
|
var buttonText = 'button';
|
|
2078
1271
|
var CacheTestComponent = function CacheTestComponent() {
|
|
2079
|
-
var
|
|
2080
|
-
subtraction =
|
|
1272
|
+
var _useUseCase44 = (0, _.useUseCase)(mathUseCase),
|
|
1273
|
+
subtraction = _useUseCase44.subtraction;
|
|
2081
1274
|
var update = (0, _ahooks.useUpdate)();
|
|
2082
1275
|
var onClick = function onClick() {
|
|
2083
1276
|
update();
|
|
@@ -2100,8 +1293,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2100
1293
|
(0, _globals.test)('reducer call should not be cached if component is not at rendering phase', function () {
|
|
2101
1294
|
var buttonText = 'button';
|
|
2102
1295
|
var CacheTestComponent = function CacheTestComponent() {
|
|
2103
|
-
var
|
|
2104
|
-
subtraction =
|
|
1296
|
+
var _useUseCase45 = (0, _.useUseCase)(mathUseCase),
|
|
1297
|
+
subtraction = _useUseCase45.subtraction;
|
|
2105
1298
|
var onClick = function onClick() {
|
|
2106
1299
|
subtraction(5, 3);
|
|
2107
1300
|
};
|
|
@@ -2129,8 +1322,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2129
1322
|
var count = 0;
|
|
2130
1323
|
var buttonText = 'button';
|
|
2131
1324
|
var StringUseCaseTestComponent = function StringUseCaseTestComponent() {
|
|
2132
|
-
var
|
|
2133
|
-
subtraction =
|
|
1325
|
+
var _useUseCase46 = (0, _.useUseCase)(mathUseCase),
|
|
1326
|
+
subtraction = _useUseCase46.subtraction;
|
|
2134
1327
|
var update = (0, _ahooks.useUpdate)();
|
|
2135
1328
|
subtraction(5, count++);
|
|
2136
1329
|
var onUpdate = function onUpdate() {
|
|
@@ -2152,12 +1345,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2152
1345
|
(0, _globals.expect)(subtractionReducer).toHaveReturnedWith(4);
|
|
2153
1346
|
});
|
|
2154
1347
|
(0, _globals.test)('`options.extraValue` should be added after call `add` method', function () {
|
|
2155
|
-
var
|
|
1348
|
+
var _renderHook27 = (0, _react.renderHook)(function () {
|
|
2156
1349
|
return (0, _.useUseCase)(mathUseCase, {
|
|
2157
1350
|
extraValue: 5
|
|
2158
1351
|
});
|
|
2159
1352
|
}),
|
|
2160
|
-
result =
|
|
1353
|
+
result = _renderHook27.result;
|
|
2161
1354
|
var reducers = result.current;
|
|
2162
1355
|
var add = reducers.add;
|
|
2163
1356
|
(0, _globals.expect)(add(1, 2)).toBe(8);
|
|
@@ -2165,7 +1358,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2165
1358
|
(0, _globals.test)('when `options` has changed, it should not trigger update', function () {
|
|
2166
1359
|
var onUpdate = _globals.jest.fn();
|
|
2167
1360
|
var onDeepUpdate = _globals.jest.fn();
|
|
2168
|
-
var
|
|
1361
|
+
var _renderHook28 = (0, _react.renderHook)(function () {
|
|
2169
1362
|
var _useState9 = (0, _react2.useState)(0),
|
|
2170
1363
|
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
2171
1364
|
extraValue = _useState10[0],
|
|
@@ -2181,7 +1374,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2181
1374
|
}, [reducers]);
|
|
2182
1375
|
return setExtraValue;
|
|
2183
1376
|
}),
|
|
2184
|
-
result =
|
|
1377
|
+
result = _renderHook28.result;
|
|
2185
1378
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2186
1379
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2187
1380
|
(0, _react.act)(function () {
|
|
@@ -2193,7 +1386,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2193
1386
|
(0, _globals.test)('when `deps` change, it should update reducers', function () {
|
|
2194
1387
|
var onUpdate = _globals.jest.fn();
|
|
2195
1388
|
var onDeepUpdate = _globals.jest.fn();
|
|
2196
|
-
var
|
|
1389
|
+
var _renderHook29 = (0, _react.renderHook)(function () {
|
|
2197
1390
|
var _useState11 = (0, _react2.useState)(0),
|
|
2198
1391
|
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
2199
1392
|
extraValue = _useState12[0],
|
|
@@ -2209,7 +1402,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2209
1402
|
}, [reducers]);
|
|
2210
1403
|
return setExtraValue;
|
|
2211
1404
|
}),
|
|
2212
|
-
result =
|
|
1405
|
+
result = _renderHook29.result;
|
|
2213
1406
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2214
1407
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2215
1408
|
(0, _react.act)(function () {
|
|
@@ -2221,7 +1414,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2221
1414
|
(0, _globals.test)('empty `deps` should not update reducers', function () {
|
|
2222
1415
|
var onUpdate = _globals.jest.fn();
|
|
2223
1416
|
var onDeepUpdate = _globals.jest.fn();
|
|
2224
|
-
var
|
|
1417
|
+
var _renderHook30 = (0, _react.renderHook)(function () {
|
|
2225
1418
|
var _useState13 = (0, _react2.useState)(0),
|
|
2226
1419
|
_useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
|
|
2227
1420
|
extraValue = _useState14[0],
|
|
@@ -2237,7 +1430,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
|
|
|
2237
1430
|
}, [reducers]);
|
|
2238
1431
|
return setExtraValue;
|
|
2239
1432
|
}),
|
|
2240
|
-
result =
|
|
1433
|
+
result = _renderHook30.result;
|
|
2241
1434
|
(0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
|
|
2242
1435
|
(0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
|
|
2243
1436
|
(0, _react.act)(function () {
|