Skip to content

Commit 02dfe39

Browse files
authored
fix: fix useNumber increse (#58)
1 parent e1458a2 commit 02dfe39

File tree

2 files changed

+18
-3
lines changed

2 files changed

+18
-3
lines changed

src/array/index.test.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,21 @@ describe('useNumber array', () => {
6464
// then
6565
expect(result.current[0]).toBe(7);
6666
});
67+
it('should return lowerLimit value if nextValue is greater than upperLimit and loop', () => {
68+
// given
69+
const { result } = renderHook(() =>
70+
useNumber(5, {
71+
upperLimit: 5,
72+
lowerLimit: 1,
73+
loop: true,
74+
}),
75+
);
76+
const [, actions] = result.current;
77+
// when
78+
act(() => actions.increase());
79+
// then
80+
expect(result.current[0]).toBe(1);
81+
});
6782
it('should decrease value with concrete value', () => {
6883
// given
6984
const { result } = renderHook(() => useNumber(5));

src/array/useNumber.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ export function useNumber(
5151

5252
if (upperLimit !== undefined) {
5353
if (nextValue > upperLimit) {
54-
if (loop) {
55-
return initial;
54+
if (loop && lowerLimit) {
55+
return lowerLimit;
5656
}
5757
return upperLimit;
5858
}
@@ -61,7 +61,7 @@ export function useNumber(
6161
return nextValue;
6262
});
6363
},
64-
[initial, loop, step, upperLimit],
64+
[loop, step, upperLimit, lowerLimit],
6565
);
6666
const actions = useMemo(
6767
() => ({

0 commit comments

Comments
 (0)