react-native-timer-picker 2.5.0 → 2.6.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/README.md +22 -13
- package/dist/commonjs/components/DurationScroll/DurationScroll.js +39 -18
- package/dist/commonjs/components/DurationScroll/DurationScroll.js.map +1 -1
- package/dist/commonjs/components/DurationScroll/types.js.map +1 -1
- package/dist/commonjs/components/Modal/Modal.js +10 -10
- package/dist/commonjs/components/Modal/Modal.js.map +1 -1
- package/dist/commonjs/components/Modal/styles.js +5 -5
- package/dist/commonjs/components/Modal/styles.js.map +1 -1
- package/dist/commonjs/components/Modal/types.js.map +1 -1
- package/dist/commonjs/components/PickerItem/PickerItem.js +2 -1
- package/dist/commonjs/components/PickerItem/PickerItem.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/TimerPicker.js +47 -21
- package/dist/commonjs/components/TimerPicker/TimerPicker.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/index.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/styles.js +79 -69
- package/dist/commonjs/components/TimerPicker/styles.js.map +1 -1
- package/dist/commonjs/components/TimerPicker/types.js.map +1 -1
- package/dist/commonjs/components/TimerPickerModal/TimerPickerModal.js +34 -14
- package/dist/commonjs/components/TimerPickerModal/TimerPickerModal.js.map +1 -1
- package/dist/commonjs/components/TimerPickerModal/styles.js +34 -28
- package/dist/commonjs/components/TimerPickerModal/styles.js.map +1 -1
- package/dist/commonjs/components/TimerPickerModal/types.js.map +1 -1
- package/dist/commonjs/index.js +3 -39
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/tests/DurationScroll.test.js +8 -8
- package/dist/commonjs/tests/DurationScroll.test.js.map +1 -1
- package/dist/commonjs/tests/Modal.test.js.map +1 -1
- package/dist/commonjs/tests/TimerPicker.test.js +1 -9
- package/dist/commonjs/tests/TimerPicker.test.js.map +1 -1
- package/dist/commonjs/tests/TimerPickerModal.test.js +3 -3
- package/dist/commonjs/tests/TimerPickerModal.test.js.map +1 -1
- package/dist/commonjs/tests/colorToRgba.test.js.map +1 -1
- package/dist/commonjs/tests/generateNumbers.test.js +63 -63
- package/dist/commonjs/tests/generateNumbers.test.js.map +1 -1
- package/dist/commonjs/tests/getAdjustedLimit.test.js +38 -38
- package/dist/commonjs/tests/getAdjustedLimit.test.js.map +1 -1
- package/dist/commonjs/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -1
- package/dist/commonjs/tests/getInitialScrollIndex.test.js.map +1 -1
- package/dist/commonjs/tests/getSafeInitialValue.test.js +2 -0
- package/dist/commonjs/tests/getSafeInitialValue.test.js.map +1 -1
- package/dist/commonjs/tests/padNumber.test.js.map +1 -1
- package/dist/commonjs/utils/colorToRgba.js +4 -4
- package/dist/commonjs/utils/colorToRgba.js.map +1 -1
- package/dist/commonjs/utils/generateNumbers.js.map +1 -1
- package/dist/commonjs/utils/getAdjustedLimit.js.map +1 -1
- package/dist/commonjs/utils/getDurationAndIndexFromScrollOffset.js.map +1 -1
- package/dist/commonjs/utils/getInitialScrollIndex.js +4 -4
- package/dist/commonjs/utils/getInitialScrollIndex.js.map +1 -1
- package/dist/commonjs/utils/getSafeInitialValue.js +5 -5
- package/dist/commonjs/utils/getSafeInitialValue.js.map +1 -1
- package/dist/commonjs/utils/padNumber.js.map +1 -1
- package/dist/module/components/DurationScroll/DurationScroll.js +39 -18
- package/dist/module/components/DurationScroll/DurationScroll.js.map +1 -1
- package/dist/module/components/DurationScroll/types.js.map +1 -1
- package/dist/module/components/Modal/Modal.js +10 -10
- package/dist/module/components/Modal/Modal.js.map +1 -1
- package/dist/module/components/Modal/styles.js +5 -5
- package/dist/module/components/Modal/styles.js.map +1 -1
- package/dist/module/components/Modal/types.js.map +1 -1
- package/dist/module/components/PickerItem/PickerItem.js +2 -1
- package/dist/module/components/PickerItem/PickerItem.js.map +1 -1
- package/dist/module/components/TimerPicker/TimerPicker.js +47 -21
- package/dist/module/components/TimerPicker/TimerPicker.js.map +1 -1
- package/dist/module/components/TimerPicker/index.js.map +1 -1
- package/dist/module/components/TimerPicker/styles.js +79 -69
- package/dist/module/components/TimerPicker/styles.js.map +1 -1
- package/dist/module/components/TimerPicker/types.js.map +1 -1
- package/dist/module/components/TimerPickerModal/TimerPickerModal.js +35 -15
- package/dist/module/components/TimerPickerModal/TimerPickerModal.js.map +1 -1
- package/dist/module/components/TimerPickerModal/styles.js +33 -27
- package/dist/module/components/TimerPickerModal/styles.js.map +1 -1
- package/dist/module/components/TimerPickerModal/types.js.map +1 -1
- package/dist/module/index.js +2 -2
- package/dist/module/index.js.map +1 -1
- package/dist/module/tests/DurationScroll.test.js +8 -8
- package/dist/module/tests/DurationScroll.test.js.map +1 -1
- package/dist/module/tests/Modal.test.js.map +1 -1
- package/dist/module/tests/TimerPicker.test.js +1 -8
- package/dist/module/tests/TimerPicker.test.js.map +1 -1
- package/dist/module/tests/TimerPickerModal.test.js +3 -3
- package/dist/module/tests/TimerPickerModal.test.js.map +1 -1
- package/dist/module/tests/colorToRgba.test.js.map +1 -1
- package/dist/module/tests/generateNumbers.test.js +63 -63
- package/dist/module/tests/generateNumbers.test.js.map +1 -1
- package/dist/module/tests/getAdjustedLimit.test.js +38 -38
- package/dist/module/tests/getAdjustedLimit.test.js.map +1 -1
- package/dist/module/tests/getDurationAndIndexFromScrollOffset.test.js.map +1 -1
- package/dist/module/tests/getInitialScrollIndex.test.js.map +1 -1
- package/dist/module/tests/getSafeInitialValue.test.js +1 -0
- package/dist/module/tests/getSafeInitialValue.test.js.map +1 -1
- package/dist/module/tests/padNumber.test.js.map +1 -1
- package/dist/module/utils/colorToRgba.js +4 -4
- package/dist/module/utils/colorToRgba.js.map +1 -1
- package/dist/module/utils/generateNumbers.js.map +1 -1
- package/dist/module/utils/getAdjustedLimit.js.map +1 -1
- package/dist/module/utils/getDurationAndIndexFromScrollOffset.js.map +1 -1
- package/dist/module/utils/getInitialScrollIndex.js +4 -4
- package/dist/module/utils/getInitialScrollIndex.js.map +1 -1
- package/dist/module/utils/getSafeInitialValue.js +5 -5
- package/dist/module/utils/getSafeInitialValue.js.map +1 -1
- package/dist/module/utils/padNumber.js.map +1 -1
- package/dist/typescript/components/DurationScroll/types.d.ts +9 -6
- package/dist/typescript/components/Modal/styles.d.ts +5 -5
- package/dist/typescript/components/Modal/types.d.ts +2 -1
- package/dist/typescript/components/PickerItem/PickerItem.d.ts +4 -0
- package/dist/typescript/components/TimerPicker/styles.d.ts +230 -225
- package/dist/typescript/components/TimerPicker/types.d.ts +9 -8
- package/dist/typescript/components/TimerPickerModal/styles.d.ts +158 -154
- package/dist/typescript/components/TimerPickerModal/types.d.ts +2 -1
- package/dist/typescript/index.d.ts +4 -2
- package/dist/typescript/tests/DurationScroll.test.d.ts +1 -0
- package/dist/typescript/tests/Modal.test.d.ts +1 -0
- package/dist/typescript/tests/TimerPicker.test.d.ts +1 -0
- package/dist/typescript/tests/TimerPickerModal.test.d.ts +1 -0
- package/dist/typescript/tests/colorToRgba.test.d.ts +1 -0
- package/dist/typescript/tests/generateNumbers.test.d.ts +1 -0
- package/dist/typescript/tests/getAdjustedLimit.test.d.ts +1 -0
- package/dist/typescript/tests/getDurationAndIndexFromScrollOffset.test.d.ts +1 -0
- package/dist/typescript/tests/getInitialScrollIndex.test.d.ts +1 -0
- package/dist/typescript/tests/getSafeInitialValue.test.d.ts +1 -0
- package/dist/typescript/tests/padNumber.test.d.ts +1 -0
- package/package.json +144 -126
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","render","fireEvent","cleanup","TouchableOpacity","Text","TimerPickerModal","describe","mockOnConfirm","jest","fn","mockOnCancel","beforeEach","useFakeTimers","afterEach","runOnlyPendingTimers","useRealTimers","defaultProps","visible","setIsVisible","onConfirm","onCancel","it","getByTestId","createElement","component","expect","toBeDefined","getByText","confirmButton","press","toHaveBeenCalled","cancelButton","setIsVisibleMock","_extends","toHaveBeenCalledWith","closeOnOverlayPress","overlay","objectContaining","modal","props","toBe","cancelButtonText","confirmButtonText","modalTitle","not","queryByText","hideCancelButton","toBeNull","initialValue","hours","minutes","seconds","hourInterval","minuteInterval","secondInterval","onCancelMock","hideHours","hideSeconds","hideDays","hideMinutes","hourLabel","minuteLabel","secondLabel","CustomButton","onPress","testID","customCancelButton","customConfirmButton","CustomCancelButton","CustomConfirmButton"],"sources":["TimerPickerModal.test.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { render, fireEvent, cleanup } from \"@testing-library/react-native\";\nimport { TouchableOpacity, Text } from \"react-native\";\n\n\nimport TimerPickerModal from \"../components/TimerPickerModal\";\n\ndescribe(\"TimerPickerModal\", () => {\n const mockOnConfirm = jest.fn();\n const mockOnCancel = jest.fn();\n\n beforeEach(() => {\n jest.useFakeTimers();\n });\n\n afterEach(() => {\n jest.runOnlyPendingTimers();\n jest.useRealTimers();\n cleanup();\n });\n\n const defaultProps = {\n visible: true,\n setIsVisible: jest.fn(),\n onConfirm: mockOnConfirm,\n onCancel: mockOnCancel,\n };\n\n it(\"renders without crashing\", () => {\n const { getByTestId } = render(<TimerPickerModal {...defaultProps} />);\n const component = getByTestId(\"timer-picker-modal\");\n expect(component).toBeDefined();\n });\n\n it(\"calls onConfirm when Confirm button is pressed\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} />);\n const confirmButton = getByText(\"Confirm\");\n fireEvent.press(confirmButton);\n expect(mockOnConfirm).toHaveBeenCalled();\n });\n\n it(\"calls onCancel when Cancel button is pressed\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} />);\n const cancelButton = getByText(\"Cancel\");\n fireEvent.press(cancelButton);\n expect(mockOnCancel).toHaveBeenCalled();\n });\n\n it(\"hides the modal when Cancel button is pressed\", () => {\n const setIsVisibleMock = jest.fn();\n const { getByText } = render(\n <TimerPickerModal\n {...defaultProps}\n setIsVisible={setIsVisibleMock}\n />\n );\n const cancelButton = getByText(\"Cancel\");\n fireEvent.press(cancelButton);\n expect(setIsVisibleMock).toHaveBeenCalledWith(false);\n });\n\n it(\"hides the modal when overlay is pressed\", () => {\n const setIsVisibleMock = jest.fn();\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n closeOnOverlayPress\n setIsVisible={setIsVisibleMock}\n />\n );\n const overlay = getByTestId(\"modal-backdrop\");\n fireEvent.press(overlay);\n expect(setIsVisibleMock).toHaveBeenCalledWith(false);\n });\n\n it(\"calls onConfirm with selected duration when Confirm button is pressed\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} />);\n // Select duration in TimerPicker, assuming its interaction is tested separately\n const confirmButton = getByText(\"Confirm\");\n fireEvent.press(confirmButton);\n expect(mockOnConfirm).toHaveBeenCalledWith(expect.objectContaining({}));\n });\n\n it(\"renders but is not visible when visible prop is false\", () => {\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} visible={false} />\n );\n const modal = getByTestId(\"timer-picker-modal\");\n expect(modal).toBeDefined();\n // Modal component still renders but with visible={false}\n expect(modal.props.visible).toBe(false);\n });\n\n it(\"renders with custom button labels\", () => {\n const { getByText } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButtonText=\"Dismiss\"\n confirmButtonText=\"OK\"\n />\n );\n expect(getByText(\"OK\")).toBeDefined();\n expect(getByText(\"Dismiss\")).toBeDefined();\n });\n\n it(\"renders with custom modal title\", () => {\n const { getByText } = render(\n <TimerPickerModal {...defaultProps} modalTitle=\"Select Time\" />\n );\n expect(getByText(\"Select Time\")).toBeDefined();\n });\n\n it(\"does not close on overlay press when closeOnOverlayPress is false\", () => {\n const setIsVisibleMock = jest.fn();\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n closeOnOverlayPress={false}\n setIsVisible={setIsVisibleMock}\n />\n );\n const overlay = getByTestId(\"modal-backdrop\");\n fireEvent.press(overlay);\n expect(setIsVisibleMock).not.toHaveBeenCalled();\n });\n\n it(\"hides Cancel button when hideCancelButton is true\", () => {\n const { queryByText } = render(\n <TimerPickerModal {...defaultProps} hideCancelButton />\n );\n expect(queryByText(\"Cancel\")).toBeNull();\n });\n\n it(\"renders with initial value\", () => {\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n initialValue={{ hours: 2, minutes: 30, seconds: 0 }}\n />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n });\n\n it(\"renders with custom intervals\", () => {\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n hourInterval={2}\n minuteInterval={15}\n secondInterval={5}\n />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n });\n\n it(\"calls both onCancel and setIsVisible when Cancel is pressed\", () => {\n const setIsVisibleMock = jest.fn();\n const onCancelMock = jest.fn();\n const { getByText } = render(\n <TimerPickerModal\n {...defaultProps}\n onCancel={onCancelMock}\n setIsVisible={setIsVisibleMock}\n />\n );\n const cancelButton = getByText(\"Cancel\");\n fireEvent.press(cancelButton);\n expect(onCancelMock).toHaveBeenCalled();\n expect(setIsVisibleMock).toHaveBeenCalledWith(false);\n });\n\n it(\"hides specific time units when respective hide props are provided\", () => {\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} hideHours hideSeconds />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n // Note: The specific duration scroll test IDs would be in the TimerPicker component\n });\n\n it(\"renders without crashing with all optional props\", () => {\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButtonText=\"Close\"\n confirmButtonText=\"Done\"\n hideDays={false}\n hideHours={false}\n hideMinutes={false}\n hideSeconds={false}\n hourLabel=\"h\"\n minuteLabel=\"m\"\n modalTitle=\"Pick Duration\"\n secondLabel=\"s\"\n />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n });\n\n it(\"renders custom cancel button when provided\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-cancel-button\">\n <Text>Custom Cancel</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButton={<CustomButton />}\n />\n );\n expect(getByTestId(\"custom-cancel-button\")).toBeDefined();\n });\n\n it(\"renders custom confirm button when provided\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-confirm-button\">\n <Text>Custom Confirm</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n confirmButton={<CustomButton />}\n />\n );\n expect(getByTestId(\"custom-confirm-button\")).toBeDefined();\n });\n\n it(\"calls onCancel when custom cancel button is pressed\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-cancel-button\">\n <Text>Custom Cancel</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButton={<CustomButton />}\n />\n );\n const customCancelButton = getByTestId(\"custom-cancel-button\");\n fireEvent.press(customCancelButton);\n expect(mockOnCancel).toHaveBeenCalled();\n });\n\n it(\"calls onConfirm when custom confirm button is pressed\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-confirm-button\">\n <Text>Custom Confirm</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n confirmButton={<CustomButton />}\n />\n );\n const customConfirmButton = getByTestId(\"custom-confirm-button\");\n fireEvent.press(customConfirmButton);\n expect(mockOnConfirm).toHaveBeenCalled();\n });\n\n it(\"renders both custom cancel and confirm buttons when provided\", () => {\n const CustomCancelButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-cancel-button\">\n <Text>Custom Cancel</Text>\n </TouchableOpacity>\n );\n const CustomConfirmButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-confirm-button\">\n <Text>Custom Confirm</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButton={<CustomCancelButton />}\n confirmButton={<CustomConfirmButton />}\n />\n );\n expect(getByTestId(\"custom-cancel-button\")).toBeDefined();\n expect(getByTestId(\"custom-confirm-button\")).toBeDefined();\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","render","fireEvent","cleanup","TouchableOpacity","Text","TimerPickerModal","describe","mockOnConfirm","jest","fn","mockOnCancel","beforeEach","useFakeTimers","afterEach","runOnlyPendingTimers","useRealTimers","defaultProps","onCancel","onConfirm","setIsVisible","visible","it","getByTestId","createElement","component","expect","toBeDefined","getByText","confirmButton","press","toHaveBeenCalled","cancelButton","setIsVisibleMock","_extends","toHaveBeenCalledWith","closeOnOverlayPress","overlay","objectContaining","modal","props","toBe","cancelButtonText","confirmButtonText","modalTitle","not","queryByText","hideCancelButton","toBeNull","initialValue","hours","minutes","seconds","hourInterval","minuteInterval","secondInterval","onCancelMock","hideHours","hideSeconds","hideDays","hideMinutes","hourLabel","minuteLabel","secondLabel","CustomButton","onPress","testID","customCancelButton","customConfirmButton","CustomCancelButton","CustomConfirmButton"],"sources":["TimerPickerModal.test.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { render, fireEvent, cleanup } from \"@testing-library/react-native\";\nimport { TouchableOpacity, Text } from \"react-native\";\n\nimport TimerPickerModal from \"../components/TimerPickerModal\";\n\ndescribe(\"TimerPickerModal\", () => {\n const mockOnConfirm = jest.fn();\n const mockOnCancel = jest.fn();\n\n beforeEach(() => {\n jest.useFakeTimers();\n });\n\n afterEach(() => {\n jest.runOnlyPendingTimers();\n jest.useRealTimers();\n cleanup();\n });\n\n const defaultProps = {\n onCancel: mockOnCancel,\n onConfirm: mockOnConfirm,\n setIsVisible: jest.fn(),\n visible: true,\n };\n\n it(\"renders without crashing\", () => {\n const { getByTestId } = render(<TimerPickerModal {...defaultProps} />);\n const component = getByTestId(\"timer-picker-modal\");\n expect(component).toBeDefined();\n });\n\n it(\"calls onConfirm when Confirm button is pressed\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} />);\n const confirmButton = getByText(\"Confirm\");\n fireEvent.press(confirmButton);\n expect(mockOnConfirm).toHaveBeenCalled();\n });\n\n it(\"calls onCancel when Cancel button is pressed\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} />);\n const cancelButton = getByText(\"Cancel\");\n fireEvent.press(cancelButton);\n expect(mockOnCancel).toHaveBeenCalled();\n });\n\n it(\"hides the modal when Cancel button is pressed\", () => {\n const setIsVisibleMock = jest.fn();\n const { getByText } = render(\n <TimerPickerModal {...defaultProps} setIsVisible={setIsVisibleMock} />\n );\n const cancelButton = getByText(\"Cancel\");\n fireEvent.press(cancelButton);\n expect(setIsVisibleMock).toHaveBeenCalledWith(false);\n });\n\n it(\"hides the modal when overlay is pressed\", () => {\n const setIsVisibleMock = jest.fn();\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} closeOnOverlayPress setIsVisible={setIsVisibleMock} />\n );\n const overlay = getByTestId(\"modal-backdrop\");\n fireEvent.press(overlay);\n expect(setIsVisibleMock).toHaveBeenCalledWith(false);\n });\n\n it(\"calls onConfirm with selected duration when Confirm button is pressed\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} />);\n // Select duration in TimerPicker, assuming its interaction is tested separately\n const confirmButton = getByText(\"Confirm\");\n fireEvent.press(confirmButton);\n expect(mockOnConfirm).toHaveBeenCalledWith(expect.objectContaining({}));\n });\n\n it(\"renders but is not visible when visible prop is false\", () => {\n const { getByTestId } = render(<TimerPickerModal {...defaultProps} visible={false} />);\n const modal = getByTestId(\"timer-picker-modal\");\n expect(modal).toBeDefined();\n // Modal component still renders but with visible={false}\n expect(modal.props.visible).toBe(false);\n });\n\n it(\"renders with custom button labels\", () => {\n const { getByText } = render(\n <TimerPickerModal {...defaultProps} cancelButtonText=\"Dismiss\" confirmButtonText=\"OK\" />\n );\n expect(getByText(\"OK\")).toBeDefined();\n expect(getByText(\"Dismiss\")).toBeDefined();\n });\n\n it(\"renders with custom modal title\", () => {\n const { getByText } = render(<TimerPickerModal {...defaultProps} modalTitle=\"Select Time\" />);\n expect(getByText(\"Select Time\")).toBeDefined();\n });\n\n it(\"does not close on overlay press when closeOnOverlayPress is false\", () => {\n const setIsVisibleMock = jest.fn();\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n closeOnOverlayPress={false}\n setIsVisible={setIsVisibleMock}\n />\n );\n const overlay = getByTestId(\"modal-backdrop\");\n fireEvent.press(overlay);\n expect(setIsVisibleMock).not.toHaveBeenCalled();\n });\n\n it(\"hides Cancel button when hideCancelButton is true\", () => {\n const { queryByText } = render(<TimerPickerModal {...defaultProps} hideCancelButton />);\n expect(queryByText(\"Cancel\")).toBeNull();\n });\n\n it(\"renders with initial value\", () => {\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} initialValue={{ hours: 2, minutes: 30, seconds: 0 }} />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n });\n\n it(\"renders with custom intervals\", () => {\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} hourInterval={2} minuteInterval={15} secondInterval={5} />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n });\n\n it(\"calls both onCancel and setIsVisible when Cancel is pressed\", () => {\n const setIsVisibleMock = jest.fn();\n const onCancelMock = jest.fn();\n const { getByText } = render(\n <TimerPickerModal {...defaultProps} onCancel={onCancelMock} setIsVisible={setIsVisibleMock} />\n );\n const cancelButton = getByText(\"Cancel\");\n fireEvent.press(cancelButton);\n expect(onCancelMock).toHaveBeenCalled();\n expect(setIsVisibleMock).toHaveBeenCalledWith(false);\n });\n\n it(\"hides specific time units when respective hide props are provided\", () => {\n const { getByTestId } = render(<TimerPickerModal {...defaultProps} hideHours hideSeconds />);\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n // Note: The specific duration scroll test IDs would be in the TimerPicker component\n });\n\n it(\"renders without crashing with all optional props\", () => {\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButtonText=\"Close\"\n confirmButtonText=\"Done\"\n hideDays={false}\n hideHours={false}\n hideMinutes={false}\n hideSeconds={false}\n hourLabel=\"h\"\n minuteLabel=\"m\"\n modalTitle=\"Pick Duration\"\n secondLabel=\"s\"\n />\n );\n expect(getByTestId(\"timer-picker-modal\")).toBeDefined();\n });\n\n it(\"renders custom cancel button when provided\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-cancel-button\">\n <Text>Custom Cancel</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} cancelButton={<CustomButton />} />\n );\n expect(getByTestId(\"custom-cancel-button\")).toBeDefined();\n });\n\n it(\"renders custom confirm button when provided\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-confirm-button\">\n <Text>Custom Confirm</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} confirmButton={<CustomButton />} />\n );\n expect(getByTestId(\"custom-confirm-button\")).toBeDefined();\n });\n\n it(\"calls onCancel when custom cancel button is pressed\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-cancel-button\">\n <Text>Custom Cancel</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} cancelButton={<CustomButton />} />\n );\n const customCancelButton = getByTestId(\"custom-cancel-button\");\n fireEvent.press(customCancelButton);\n expect(mockOnCancel).toHaveBeenCalled();\n });\n\n it(\"calls onConfirm when custom confirm button is pressed\", () => {\n const CustomButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-confirm-button\">\n <Text>Custom Confirm</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal {...defaultProps} confirmButton={<CustomButton />} />\n );\n const customConfirmButton = getByTestId(\"custom-confirm-button\");\n fireEvent.press(customConfirmButton);\n expect(mockOnConfirm).toHaveBeenCalled();\n });\n\n it(\"renders both custom cancel and confirm buttons when provided\", () => {\n const CustomCancelButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-cancel-button\">\n <Text>Custom Cancel</Text>\n </TouchableOpacity>\n );\n const CustomConfirmButton = ({ onPress }: { onPress?: () => void }) => (\n <TouchableOpacity onPress={onPress} testID=\"custom-confirm-button\">\n <Text>Custom Confirm</Text>\n </TouchableOpacity>\n );\n\n const { getByTestId } = render(\n <TimerPickerModal\n {...defaultProps}\n cancelButton={<CustomCancelButton />}\n confirmButton={<CustomConfirmButton />}\n />\n );\n expect(getByTestId(\"custom-cancel-button\")).toBeDefined();\n expect(getByTestId(\"custom-confirm-button\")).toBeDefined();\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["colorToRgba","describe","it","expect","color","toBe","opacity","unknownColor","invalidColor","malformedHex"],"sources":["colorToRgba.test.ts"],"sourcesContent":["import { colorToRgba } from \"../utils/colorToRgba\";\n\ndescribe(\"colorToRgba\", () => {\n describe(\"named colors\", () => {\n it(\"converts 'transparent' to rgba\", () => {\n expect(colorToRgba({ color: \"transparent\" })).toBe(\"rgba(0, 0, 0, 0)\");\n });\n\n it(\"converts 'black' to rgba\", () => {\n expect(colorToRgba({ color: \"black\" })).toBe(\"rgba(0, 0, 0, 1)\");\n });\n\n it(\"converts 'white' to rgba\", () => {\n expect(colorToRgba({ color: \"white\" })).toBe(\"rgba(255, 255, 255, 1)\");\n });\n\n it(\"converts 'blue' to rgba\", () => {\n expect(colorToRgba({ color: \"blue\" })).toBe(\"rgba(0, 0, 255, 1)\");\n });\n\n it(\"converts 'green' to rgba\", () => {\n expect(colorToRgba({ color: \"green\" })).toBe(\"rgba(0, 128, 0, 1)\");\n });\n\n it(\"converts 'gray' to rgba\", () => {\n expect(colorToRgba({ color: \"gray\" })).toBe(\"rgba(128, 128, 128, 1)\");\n });\n\n it(\"converts 'red' to rgba\", () => {\n expect(colorToRgba({ color: \"red\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n });\n\n describe(\"RGB format\", () => {\n it(\"converts rgb color to rgba with default opacity\", () => {\n expect(colorToRgba({ color: \"rgb(255, 0, 0)\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts rgb color to rgba with custom opacity\", () => {\n expect(colorToRgba({ color: \"rgb(255, 0, 0)\", opacity: 0.5 })).toBe(\n \"rgba(255, 0, 0, 0.5)\"\n );\n });\n\n it(\"converts rgb color with spaces\", () => {\n expect(colorToRgba({ color: \"rgb(128, 64, 32)\" })).toBe(\"rgba(128, 64, 32, 1)\");\n });\n\n it(\"converts rgb color with no spaces\", () => {\n expect(colorToRgba({ color: \"rgb(128,64,32)\" })).toBe(\"rgba(128, 64, 32, 1)\");\n });\n\n it(\"handles rgb with zero values\", () => {\n expect(colorToRgba({ color: \"rgb(0, 0, 0)\" })).toBe(\"rgba(0, 0, 0, 1)\");\n });\n\n it(\"handles rgb with max values\", () => {\n expect(colorToRgba({ color: \"rgb(255, 255, 255)\" })).toBe(\"rgba(255, 255, 255, 1)\");\n });\n });\n\n describe(\"hex format\", () => {\n it(\"converts 6-digit hex color to rgba\", () => {\n expect(colorToRgba({ color: \"#FF0000\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts 6-digit hex color with custom opacity\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 0.7 })).toBe(\"rgba(255, 0, 0, 0.7)\");\n });\n\n it(\"converts 3-digit hex color to rgba\", () => {\n expect(colorToRgba({ color: \"#F00\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts 3-digit hex color with custom opacity\", () => {\n expect(colorToRgba({ color: \"#F00\", opacity: 0.3 })).toBe(\"rgba(255, 0, 0, 0.3)\");\n });\n\n it(\"converts lowercase hex color\", () => {\n expect(colorToRgba({ color: \"#ff0000\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts mixed case hex color\", () => {\n expect(colorToRgba({ color: \"#Ff00Aa\" })).toBe(\"rgba(255, 0, 170, 1)\");\n });\n\n it(\"converts hex black\", () => {\n expect(colorToRgba({ color: \"#000000\" })).toBe(\"rgba(0, 0, 0, 1)\");\n });\n\n it(\"converts hex white\", () => {\n expect(colorToRgba({ color: \"#FFFFFF\" })).toBe(\"rgba(255, 255, 255, 1)\");\n });\n\n it(\"converts 3-digit gray hex\", () => {\n expect(colorToRgba({ color: \"#888\" })).toBe(\"rgba(136, 136, 136, 1)\");\n });\n });\n\n describe(\"opacity handling\", () => {\n it(\"uses opacity 1 when not provided\", () => {\n expect(colorToRgba({ color: \"#FF0000\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"handles opacity 0\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 0 })).toBe(\"rgba(255, 0, 0, 0)\");\n });\n\n it(\"handles opacity 1\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 1 })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"handles decimal opacity\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 0.42 })).toBe(\"rgba(255, 0, 0, 0.42)\");\n });\n\n it(\"ignores opacity for named color 'transparent'\", () => {\n expect(colorToRgba({ color: \"transparent\", opacity: 0.5 })).toBe(\"rgba(0, 0, 0, 0)\");\n });\n });\n\n describe(\"edge cases\", () => {\n it(\"returns original color for unknown format\", () => {\n const unknownColor = \"hsl(120, 100%, 50%)\";\n expect(colorToRgba({ color: unknownColor })).toBe(unknownColor);\n });\n\n it(\"returns original color for invalid named color\", () => {\n const invalidColor = \"magenta\";\n expect(colorToRgba({ color: invalidColor })).toBe(invalidColor);\n });\n\n it(\"returns original color for malformed hex\", () => {\n const malformedHex = \"#GG0000\";\n expect(colorToRgba({ color: malformedHex })).toBe(malformedHex);\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["colorToRgba","describe","it","expect","color","toBe","opacity","unknownColor","invalidColor","malformedHex"],"sources":["colorToRgba.test.ts"],"sourcesContent":["import { colorToRgba } from \"../utils/colorToRgba\";\n\ndescribe(\"colorToRgba\", () => {\n describe(\"named colors\", () => {\n it(\"converts 'transparent' to rgba\", () => {\n expect(colorToRgba({ color: \"transparent\" })).toBe(\"rgba(0, 0, 0, 0)\");\n });\n\n it(\"converts 'black' to rgba\", () => {\n expect(colorToRgba({ color: \"black\" })).toBe(\"rgba(0, 0, 0, 1)\");\n });\n\n it(\"converts 'white' to rgba\", () => {\n expect(colorToRgba({ color: \"white\" })).toBe(\"rgba(255, 255, 255, 1)\");\n });\n\n it(\"converts 'blue' to rgba\", () => {\n expect(colorToRgba({ color: \"blue\" })).toBe(\"rgba(0, 0, 255, 1)\");\n });\n\n it(\"converts 'green' to rgba\", () => {\n expect(colorToRgba({ color: \"green\" })).toBe(\"rgba(0, 128, 0, 1)\");\n });\n\n it(\"converts 'gray' to rgba\", () => {\n expect(colorToRgba({ color: \"gray\" })).toBe(\"rgba(128, 128, 128, 1)\");\n });\n\n it(\"converts 'red' to rgba\", () => {\n expect(colorToRgba({ color: \"red\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n });\n\n describe(\"RGB format\", () => {\n it(\"converts rgb color to rgba with default opacity\", () => {\n expect(colorToRgba({ color: \"rgb(255, 0, 0)\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts rgb color to rgba with custom opacity\", () => {\n expect(colorToRgba({ color: \"rgb(255, 0, 0)\", opacity: 0.5 })).toBe(\"rgba(255, 0, 0, 0.5)\");\n });\n\n it(\"converts rgb color with spaces\", () => {\n expect(colorToRgba({ color: \"rgb(128, 64, 32)\" })).toBe(\"rgba(128, 64, 32, 1)\");\n });\n\n it(\"converts rgb color with no spaces\", () => {\n expect(colorToRgba({ color: \"rgb(128,64,32)\" })).toBe(\"rgba(128, 64, 32, 1)\");\n });\n\n it(\"handles rgb with zero values\", () => {\n expect(colorToRgba({ color: \"rgb(0, 0, 0)\" })).toBe(\"rgba(0, 0, 0, 1)\");\n });\n\n it(\"handles rgb with max values\", () => {\n expect(colorToRgba({ color: \"rgb(255, 255, 255)\" })).toBe(\"rgba(255, 255, 255, 1)\");\n });\n });\n\n describe(\"hex format\", () => {\n it(\"converts 6-digit hex color to rgba\", () => {\n expect(colorToRgba({ color: \"#FF0000\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts 6-digit hex color with custom opacity\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 0.7 })).toBe(\"rgba(255, 0, 0, 0.7)\");\n });\n\n it(\"converts 3-digit hex color to rgba\", () => {\n expect(colorToRgba({ color: \"#F00\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts 3-digit hex color with custom opacity\", () => {\n expect(colorToRgba({ color: \"#F00\", opacity: 0.3 })).toBe(\"rgba(255, 0, 0, 0.3)\");\n });\n\n it(\"converts lowercase hex color\", () => {\n expect(colorToRgba({ color: \"#ff0000\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"converts mixed case hex color\", () => {\n expect(colorToRgba({ color: \"#Ff00Aa\" })).toBe(\"rgba(255, 0, 170, 1)\");\n });\n\n it(\"converts hex black\", () => {\n expect(colorToRgba({ color: \"#000000\" })).toBe(\"rgba(0, 0, 0, 1)\");\n });\n\n it(\"converts hex white\", () => {\n expect(colorToRgba({ color: \"#FFFFFF\" })).toBe(\"rgba(255, 255, 255, 1)\");\n });\n\n it(\"converts 3-digit gray hex\", () => {\n expect(colorToRgba({ color: \"#888\" })).toBe(\"rgba(136, 136, 136, 1)\");\n });\n });\n\n describe(\"opacity handling\", () => {\n it(\"uses opacity 1 when not provided\", () => {\n expect(colorToRgba({ color: \"#FF0000\" })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"handles opacity 0\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 0 })).toBe(\"rgba(255, 0, 0, 0)\");\n });\n\n it(\"handles opacity 1\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 1 })).toBe(\"rgba(255, 0, 0, 1)\");\n });\n\n it(\"handles decimal opacity\", () => {\n expect(colorToRgba({ color: \"#FF0000\", opacity: 0.42 })).toBe(\"rgba(255, 0, 0, 0.42)\");\n });\n\n it(\"ignores opacity for named color 'transparent'\", () => {\n expect(colorToRgba({ color: \"transparent\", opacity: 0.5 })).toBe(\"rgba(0, 0, 0, 0)\");\n });\n });\n\n describe(\"edge cases\", () => {\n it(\"returns original color for unknown format\", () => {\n const unknownColor = \"hsl(120, 100%, 50%)\";\n expect(colorToRgba({ color: unknownColor })).toBe(unknownColor);\n });\n\n it(\"returns original color for invalid named color\", () => {\n const invalidColor = \"magenta\";\n expect(colorToRgba({ color: invalidColor })).toBe(invalidColor);\n });\n\n it(\"returns original color for malformed hex\", () => {\n const malformedHex = \"#GG0000\";\n expect(colorToRgba({ color: malformedHex })).toBe(malformedHex);\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,28 +3,28 @@ describe("generateNumbers", () => {
|
|
|
3
3
|
describe("basic functionality", () => {
|
|
4
4
|
it("generates correct number of items", () => {
|
|
5
5
|
const result = generateNumbers(10, {
|
|
6
|
+
disableInfiniteScroll: true,
|
|
6
7
|
interval: 1,
|
|
7
8
|
padWithNItems: 0,
|
|
8
|
-
repeatNTimes: 1
|
|
9
|
-
disableInfiniteScroll: true
|
|
9
|
+
repeatNTimes: 1
|
|
10
10
|
});
|
|
11
11
|
expect(result).toHaveLength(10);
|
|
12
12
|
});
|
|
13
13
|
it("generates numbers with correct interval", () => {
|
|
14
14
|
const result = generateNumbers(5, {
|
|
15
|
+
disableInfiniteScroll: true,
|
|
15
16
|
interval: 2,
|
|
16
17
|
padWithNItems: 0,
|
|
17
|
-
repeatNTimes: 1
|
|
18
|
-
disableInfiniteScroll: true
|
|
18
|
+
repeatNTimes: 1
|
|
19
19
|
});
|
|
20
20
|
expect(result).toEqual(["\u20070", "\u20072", "\u20074", "\u20076", "\u20078"]);
|
|
21
21
|
});
|
|
22
22
|
it("generates numbers with interval of 5", () => {
|
|
23
23
|
const result = generateNumbers(4, {
|
|
24
|
+
disableInfiniteScroll: true,
|
|
24
25
|
interval: 5,
|
|
25
26
|
padWithNItems: 0,
|
|
26
|
-
repeatNTimes: 1
|
|
27
|
-
disableInfiniteScroll: true
|
|
27
|
+
repeatNTimes: 1
|
|
28
28
|
});
|
|
29
29
|
expect(result).toEqual(["\u20070", "\u20075", "10", "15"]);
|
|
30
30
|
});
|
|
@@ -48,21 +48,21 @@ describe("generateNumbers", () => {
|
|
|
48
48
|
describe("padding with zeros", () => {
|
|
49
49
|
it("pads single-digit numbers with zeros", () => {
|
|
50
50
|
const result = generateNumbers(5, {
|
|
51
|
+
disableInfiniteScroll: true,
|
|
51
52
|
interval: 1,
|
|
52
|
-
padWithNItems: 0,
|
|
53
|
-
repeatNTimes: 1,
|
|
54
53
|
padNumbersWithZero: true,
|
|
55
|
-
|
|
54
|
+
padWithNItems: 0,
|
|
55
|
+
repeatNTimes: 1
|
|
56
56
|
});
|
|
57
57
|
expect(result).toEqual(["00", "01", "02", "03", "04"]);
|
|
58
58
|
});
|
|
59
59
|
it("does not pad double-digit numbers", () => {
|
|
60
60
|
const result = generateNumbers(15, {
|
|
61
|
+
disableInfiniteScroll: true,
|
|
61
62
|
interval: 1,
|
|
62
|
-
padWithNItems: 0,
|
|
63
|
-
repeatNTimes: 1,
|
|
64
63
|
padNumbersWithZero: true,
|
|
65
|
-
|
|
64
|
+
padWithNItems: 0,
|
|
65
|
+
repeatNTimes: 1
|
|
66
66
|
});
|
|
67
67
|
expect(result[0]).toBe("00");
|
|
68
68
|
expect(result[9]).toBe("09");
|
|
@@ -71,11 +71,11 @@ describe("generateNumbers", () => {
|
|
|
71
71
|
});
|
|
72
72
|
it("pads with space when padNumbersWithZero is false", () => {
|
|
73
73
|
const result = generateNumbers(5, {
|
|
74
|
+
disableInfiniteScroll: true,
|
|
74
75
|
interval: 1,
|
|
75
|
-
padWithNItems: 0,
|
|
76
|
-
repeatNTimes: 1,
|
|
77
76
|
padNumbersWithZero: false,
|
|
78
|
-
|
|
77
|
+
padWithNItems: 0,
|
|
78
|
+
repeatNTimes: 1
|
|
79
79
|
});
|
|
80
80
|
expect(result).toEqual(["\u20070", "\u20071", "\u20072", "\u20073", "\u20074"]);
|
|
81
81
|
});
|
|
@@ -83,29 +83,29 @@ describe("generateNumbers", () => {
|
|
|
83
83
|
describe("padding with empty items", () => {
|
|
84
84
|
it("adds padding items at start and end when infinite scroll is disabled", () => {
|
|
85
85
|
const result = generateNumbers(3, {
|
|
86
|
+
disableInfiniteScroll: true,
|
|
86
87
|
interval: 1,
|
|
87
88
|
padWithNItems: 2,
|
|
88
|
-
repeatNTimes: 1
|
|
89
|
-
disableInfiniteScroll: true
|
|
89
|
+
repeatNTimes: 1
|
|
90
90
|
});
|
|
91
91
|
expect(result).toEqual(["", "", "\u20070", "\u20071", "\u20072", "", ""]);
|
|
92
92
|
expect(result).toHaveLength(7);
|
|
93
93
|
});
|
|
94
94
|
it("adds padding with 1 item", () => {
|
|
95
95
|
const result = generateNumbers(3, {
|
|
96
|
+
disableInfiniteScroll: true,
|
|
96
97
|
interval: 1,
|
|
97
98
|
padWithNItems: 1,
|
|
98
|
-
repeatNTimes: 1
|
|
99
|
-
disableInfiniteScroll: true
|
|
99
|
+
repeatNTimes: 1
|
|
100
100
|
});
|
|
101
101
|
expect(result).toEqual(["", "\u20070", "\u20071", "\u20072", ""]);
|
|
102
102
|
});
|
|
103
103
|
it("adds padding with 3 items", () => {
|
|
104
104
|
const result = generateNumbers(2, {
|
|
105
|
+
disableInfiniteScroll: true,
|
|
105
106
|
interval: 1,
|
|
106
107
|
padWithNItems: 3,
|
|
107
|
-
repeatNTimes: 1
|
|
108
|
-
disableInfiniteScroll: true
|
|
108
|
+
repeatNTimes: 1
|
|
109
109
|
});
|
|
110
110
|
expect(result).toEqual(["", "", "", "\u20070", "\u20071", "", "", ""]);
|
|
111
111
|
});
|
|
@@ -113,19 +113,19 @@ describe("generateNumbers", () => {
|
|
|
113
113
|
describe("number repetition", () => {
|
|
114
114
|
it("repeats numbers when repeatNTimes is 2", () => {
|
|
115
115
|
const result = generateNumbers(3, {
|
|
116
|
+
disableInfiniteScroll: false,
|
|
116
117
|
interval: 1,
|
|
117
118
|
padWithNItems: 0,
|
|
118
|
-
repeatNTimes: 2
|
|
119
|
-
disableInfiniteScroll: false
|
|
119
|
+
repeatNTimes: 2
|
|
120
120
|
});
|
|
121
121
|
expect(result).toEqual(["\u20070", "\u20071", "\u20072", "\u20070", "\u20071", "\u20072"]);
|
|
122
122
|
});
|
|
123
123
|
it("repeats numbers when repeatNTimes is 3", () => {
|
|
124
124
|
const result = generateNumbers(2, {
|
|
125
|
+
disableInfiniteScroll: false,
|
|
125
126
|
interval: 1,
|
|
126
127
|
padWithNItems: 0,
|
|
127
|
-
repeatNTimes: 3
|
|
128
|
-
disableInfiniteScroll: false
|
|
128
|
+
repeatNTimes: 3
|
|
129
129
|
});
|
|
130
130
|
expect(result).toEqual(["\u20070", "\u20071", "\u20070", "\u20071", "\u20070", "\u20071"]);
|
|
131
131
|
});
|
|
@@ -133,31 +133,31 @@ describe("generateNumbers", () => {
|
|
|
133
133
|
describe("combined options", () => {
|
|
134
134
|
it("combines padding with zeros and empty items", () => {
|
|
135
135
|
const result = generateNumbers(3, {
|
|
136
|
+
disableInfiniteScroll: true,
|
|
136
137
|
interval: 1,
|
|
137
|
-
padWithNItems: 1,
|
|
138
|
-
repeatNTimes: 1,
|
|
139
138
|
padNumbersWithZero: true,
|
|
140
|
-
|
|
139
|
+
padWithNItems: 1,
|
|
140
|
+
repeatNTimes: 1
|
|
141
141
|
});
|
|
142
142
|
expect(result).toEqual(["", "00", "01", "02", ""]);
|
|
143
143
|
});
|
|
144
144
|
it("combines interval, padding with zeros, and repetition", () => {
|
|
145
145
|
const result = generateNumbers(3, {
|
|
146
|
+
disableInfiniteScroll: false,
|
|
146
147
|
interval: 5,
|
|
147
|
-
padWithNItems: 0,
|
|
148
|
-
repeatNTimes: 2,
|
|
149
148
|
padNumbersWithZero: true,
|
|
150
|
-
|
|
149
|
+
padWithNItems: 0,
|
|
150
|
+
repeatNTimes: 2
|
|
151
151
|
});
|
|
152
152
|
expect(result).toEqual(["00", "05", "10", "00", "05", "10"]);
|
|
153
153
|
});
|
|
154
154
|
it("handles all options together", () => {
|
|
155
155
|
const result = generateNumbers(3, {
|
|
156
|
+
disableInfiniteScroll: false,
|
|
156
157
|
interval: 2,
|
|
157
|
-
padWithNItems: 1,
|
|
158
|
-
repeatNTimes: 2,
|
|
159
158
|
padNumbersWithZero: true,
|
|
160
|
-
|
|
159
|
+
padWithNItems: 1,
|
|
160
|
+
repeatNTimes: 2
|
|
161
161
|
});
|
|
162
162
|
expect(result).toEqual(["00", "02", "04", "00", "02", "04"]);
|
|
163
163
|
});
|
|
@@ -167,9 +167,9 @@ describe("generate12HourNumbers", () => {
|
|
|
167
167
|
describe("basic functionality", () => {
|
|
168
168
|
it("generates all 24 hours with 1-hour interval", () => {
|
|
169
169
|
const result = generate12HourNumbers({
|
|
170
|
+
disableInfiniteScroll: false,
|
|
170
171
|
interval: 1,
|
|
171
|
-
padWithNItems: 0
|
|
172
|
-
disableInfiniteScroll: false
|
|
172
|
+
padWithNItems: 0
|
|
173
173
|
});
|
|
174
174
|
expect(result).toHaveLength(24);
|
|
175
175
|
expect(result[0]).toBe("12 AM");
|
|
@@ -179,9 +179,9 @@ describe("generate12HourNumbers", () => {
|
|
|
179
179
|
});
|
|
180
180
|
it("generates hours with 2-hour interval", () => {
|
|
181
181
|
const result = generate12HourNumbers({
|
|
182
|
+
disableInfiniteScroll: false,
|
|
182
183
|
interval: 2,
|
|
183
|
-
padWithNItems: 0
|
|
184
|
-
disableInfiniteScroll: false
|
|
184
|
+
padWithNItems: 0
|
|
185
185
|
});
|
|
186
186
|
expect(result).toHaveLength(12);
|
|
187
187
|
expect(result[0]).toBe("12 AM");
|
|
@@ -191,9 +191,9 @@ describe("generate12HourNumbers", () => {
|
|
|
191
191
|
});
|
|
192
192
|
it("generates hours with 3-hour interval", () => {
|
|
193
193
|
const result = generate12HourNumbers({
|
|
194
|
+
disableInfiniteScroll: false,
|
|
194
195
|
interval: 3,
|
|
195
|
-
padWithNItems: 0
|
|
196
|
-
disableInfiniteScroll: false
|
|
196
|
+
padWithNItems: 0
|
|
197
197
|
});
|
|
198
198
|
expect(result).toHaveLength(8);
|
|
199
199
|
expect(result[0]).toBe("12 AM");
|
|
@@ -203,9 +203,9 @@ describe("generate12HourNumbers", () => {
|
|
|
203
203
|
});
|
|
204
204
|
it("generates hours with 4-hour interval", () => {
|
|
205
205
|
const result = generate12HourNumbers({
|
|
206
|
+
disableInfiniteScroll: false,
|
|
206
207
|
interval: 4,
|
|
207
|
-
padWithNItems: 0
|
|
208
|
-
disableInfiniteScroll: false
|
|
208
|
+
padWithNItems: 0
|
|
209
209
|
});
|
|
210
210
|
expect(result).toHaveLength(6);
|
|
211
211
|
expect(result[0]).toBe("12 AM");
|
|
@@ -215,9 +215,9 @@ describe("generate12HourNumbers", () => {
|
|
|
215
215
|
});
|
|
216
216
|
it("generates hours with 6-hour interval", () => {
|
|
217
217
|
const result = generate12HourNumbers({
|
|
218
|
+
disableInfiniteScroll: false,
|
|
218
219
|
interval: 6,
|
|
219
|
-
padWithNItems: 0
|
|
220
|
-
disableInfiniteScroll: false
|
|
220
|
+
padWithNItems: 0
|
|
221
221
|
});
|
|
222
222
|
expect(result).toHaveLength(4);
|
|
223
223
|
expect(result[0]).toBe("12 AM");
|
|
@@ -229,10 +229,10 @@ describe("generate12HourNumbers", () => {
|
|
|
229
229
|
describe("padding with zeros", () => {
|
|
230
230
|
it("pads hours with zeros", () => {
|
|
231
231
|
const result = generate12HourNumbers({
|
|
232
|
+
disableInfiniteScroll: false,
|
|
232
233
|
interval: 1,
|
|
233
|
-
padWithNItems: 0,
|
|
234
234
|
padNumbersWithZero: true,
|
|
235
|
-
|
|
235
|
+
padWithNItems: 0
|
|
236
236
|
});
|
|
237
237
|
expect(result[0]).toBe("12 AM");
|
|
238
238
|
expect(result[1]).toBe("01 AM");
|
|
@@ -242,10 +242,10 @@ describe("generate12HourNumbers", () => {
|
|
|
242
242
|
});
|
|
243
243
|
it("handles 12-hour format correctly with zero padding", () => {
|
|
244
244
|
const result = generate12HourNumbers({
|
|
245
|
+
disableInfiniteScroll: false,
|
|
245
246
|
interval: 1,
|
|
246
|
-
padWithNItems: 0,
|
|
247
247
|
padNumbersWithZero: true,
|
|
248
|
-
|
|
248
|
+
padWithNItems: 0
|
|
249
249
|
});
|
|
250
250
|
expect(result[12]).toBe("12 PM"); // 12 PM should not be 00 PM
|
|
251
251
|
expect(result[13]).toBe("01 PM");
|
|
@@ -254,9 +254,9 @@ describe("generate12HourNumbers", () => {
|
|
|
254
254
|
describe("padding with empty items", () => {
|
|
255
255
|
it("adds padding at start and end when infinite scroll is disabled", () => {
|
|
256
256
|
const result = generate12HourNumbers({
|
|
257
|
+
disableInfiniteScroll: true,
|
|
257
258
|
interval: 6,
|
|
258
|
-
padWithNItems: 2
|
|
259
|
-
disableInfiniteScroll: true
|
|
259
|
+
padWithNItems: 2
|
|
260
260
|
});
|
|
261
261
|
expect(result[0]).toBe("");
|
|
262
262
|
expect(result[1]).toBe("");
|
|
@@ -270,9 +270,9 @@ describe("generate12HourNumbers", () => {
|
|
|
270
270
|
});
|
|
271
271
|
it("does not add padding when infinite scroll is enabled", () => {
|
|
272
272
|
const result = generate12HourNumbers({
|
|
273
|
+
disableInfiniteScroll: false,
|
|
273
274
|
interval: 6,
|
|
274
|
-
padWithNItems: 2
|
|
275
|
-
disableInfiniteScroll: false
|
|
275
|
+
padWithNItems: 2
|
|
276
276
|
});
|
|
277
277
|
expect(result[0]).toBe("12 AM");
|
|
278
278
|
expect(result[3]).toBe("\u20076 PM");
|
|
@@ -282,10 +282,10 @@ describe("generate12HourNumbers", () => {
|
|
|
282
282
|
describe("number repetition", () => {
|
|
283
283
|
it("repeats hours when repeatNTimes is 2", () => {
|
|
284
284
|
const result = generate12HourNumbers({
|
|
285
|
+
disableInfiniteScroll: false,
|
|
285
286
|
interval: 6,
|
|
286
287
|
padWithNItems: 0,
|
|
287
|
-
repeatNTimes: 2
|
|
288
|
-
disableInfiniteScroll: false
|
|
288
|
+
repeatNTimes: 2
|
|
289
289
|
});
|
|
290
290
|
expect(result).toHaveLength(8);
|
|
291
291
|
expect(result[0]).toBe("12 AM");
|
|
@@ -295,10 +295,10 @@ describe("generate12HourNumbers", () => {
|
|
|
295
295
|
});
|
|
296
296
|
it("repeats hours when repeatNTimes is 3", () => {
|
|
297
297
|
const result = generate12HourNumbers({
|
|
298
|
+
disableInfiniteScroll: false,
|
|
298
299
|
interval: 12,
|
|
299
300
|
padWithNItems: 0,
|
|
300
|
-
repeatNTimes: 3
|
|
301
|
-
disableInfiniteScroll: false
|
|
301
|
+
repeatNTimes: 3
|
|
302
302
|
});
|
|
303
303
|
expect(result).toHaveLength(6);
|
|
304
304
|
expect(result[0]).toBe("12 AM");
|
|
@@ -310,9 +310,9 @@ describe("generate12HourNumbers", () => {
|
|
|
310
310
|
});
|
|
311
311
|
it("defaults to repeatNTimes of 1 when not provided", () => {
|
|
312
312
|
const result = generate12HourNumbers({
|
|
313
|
+
disableInfiniteScroll: false,
|
|
313
314
|
interval: 12,
|
|
314
|
-
padWithNItems: 0
|
|
315
|
-
disableInfiniteScroll: false
|
|
315
|
+
padWithNItems: 0
|
|
316
316
|
});
|
|
317
317
|
expect(result).toHaveLength(2);
|
|
318
318
|
});
|
|
@@ -320,20 +320,20 @@ describe("generate12HourNumbers", () => {
|
|
|
320
320
|
describe("combined options", () => {
|
|
321
321
|
it("combines padding with zeros and empty items", () => {
|
|
322
322
|
const result = generate12HourNumbers({
|
|
323
|
+
disableInfiniteScroll: true,
|
|
323
324
|
interval: 12,
|
|
324
|
-
padWithNItems: 1,
|
|
325
325
|
padNumbersWithZero: true,
|
|
326
|
-
|
|
326
|
+
padWithNItems: 1
|
|
327
327
|
});
|
|
328
328
|
expect(result).toEqual(["", "12 AM", "12 PM", ""]);
|
|
329
329
|
});
|
|
330
330
|
it("combines all options", () => {
|
|
331
331
|
const result = generate12HourNumbers({
|
|
332
|
+
disableInfiniteScroll: false,
|
|
332
333
|
interval: 6,
|
|
333
|
-
padWithNItems: 1,
|
|
334
334
|
padNumbersWithZero: true,
|
|
335
|
-
|
|
336
|
-
|
|
335
|
+
padWithNItems: 1,
|
|
336
|
+
repeatNTimes: 2
|
|
337
337
|
});
|
|
338
338
|
expect(result).toHaveLength(8);
|
|
339
339
|
expect(result[0]).toBe("12 AM");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["generateNumbers","generate12HourNumbers","describe","it","result","interval","padWithNItems","repeatNTimes","disableInfiniteScroll","expect","toHaveLength","toEqual","padNumbersWithZero","toBe"],"sources":["generateNumbers.test.ts"],"sourcesContent":["import {\n generateNumbers,\n generate12HourNumbers,\n} from \"../utils/generateNumbers\";\n\ndescribe(\"generateNumbers\", () => {\n describe(\"basic functionality\", () => {\n it(\"generates correct number of items\", () => {\n const result = generateNumbers(10, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n disableInfiniteScroll: true,\n });\n expect(result).toHaveLength(10);\n });\n\n it(\"generates numbers with correct interval\", () => {\n const result = generateNumbers(5, {\n interval: 2,\n padWithNItems: 0,\n repeatNTimes: 1,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20072\", \"\\u20074\", \"\\u20076\", \"\\u20078\"]);\n });\n\n it(\"generates numbers with interval of 5\", () => {\n const result = generateNumbers(4, {\n interval: 5,\n padWithNItems: 0,\n repeatNTimes: 1,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20075\", \"10\", \"15\"]);\n });\n\n it(\"returns empty array when numberOfItems is 0\", () => {\n const result = generateNumbers(0, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([]);\n });\n\n it(\"returns empty array when numberOfItems is negative\", () => {\n const result = generateNumbers(-5, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([]);\n });\n });\n\n describe(\"padding with zeros\", () => {\n it(\"pads single-digit numbers with zeros\", () => {\n const result = generateNumbers(5, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n padNumbersWithZero: true,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"00\", \"01\", \"02\", \"03\", \"04\"]);\n });\n\n it(\"does not pad double-digit numbers\", () => {\n const result = generateNumbers(15, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n padNumbersWithZero: true,\n disableInfiniteScroll: true,\n });\n expect(result[0]).toBe(\"00\");\n expect(result[9]).toBe(\"09\");\n expect(result[10]).toBe(\"10\");\n expect(result[14]).toBe(\"14\");\n });\n\n it(\"pads with space when padNumbersWithZero is false\", () => {\n const result = generateNumbers(5, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n padNumbersWithZero: false,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20071\", \"\\u20072\", \"\\u20073\", \"\\u20074\"]);\n });\n });\n\n describe(\"padding with empty items\", () => {\n it(\"adds padding items at start and end when infinite scroll is disabled\", () => {\n const result = generateNumbers(3, {\n interval: 1,\n padWithNItems: 2,\n repeatNTimes: 1,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\", \"\", \"\\u20070\", \"\\u20071\", \"\\u20072\", \"\", \"\"]);\n expect(result).toHaveLength(7);\n });\n\n it(\"adds padding with 1 item\", () => {\n const result = generateNumbers(3, {\n interval: 1,\n padWithNItems: 1,\n repeatNTimes: 1,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\", \"\\u20070\", \"\\u20071\", \"\\u20072\", \"\"]);\n });\n\n it(\"adds padding with 3 items\", () => {\n const result = generateNumbers(2, {\n interval: 1,\n padWithNItems: 3,\n repeatNTimes: 1,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\", \"\", \"\", \"\\u20070\", \"\\u20071\", \"\", \"\", \"\"]);\n });\n });\n\n describe(\"number repetition\", () => {\n it(\"repeats numbers when repeatNTimes is 2\", () => {\n const result = generateNumbers(3, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 2,\n disableInfiniteScroll: false,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20071\", \"\\u20072\", \"\\u20070\", \"\\u20071\", \"\\u20072\"]);\n });\n\n it(\"repeats numbers when repeatNTimes is 3\", () => {\n const result = generateNumbers(2, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 3,\n disableInfiniteScroll: false,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20071\", \"\\u20070\", \"\\u20071\", \"\\u20070\", \"\\u20071\"]);\n });\n });\n\n describe(\"combined options\", () => {\n it(\"combines padding with zeros and empty items\", () => {\n const result = generateNumbers(3, {\n interval: 1,\n padWithNItems: 1,\n repeatNTimes: 1,\n padNumbersWithZero: true,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\", \"00\", \"01\", \"02\", \"\"]);\n });\n\n it(\"combines interval, padding with zeros, and repetition\", () => {\n const result = generateNumbers(3, {\n interval: 5,\n padWithNItems: 0,\n repeatNTimes: 2,\n padNumbersWithZero: true,\n disableInfiniteScroll: false,\n });\n expect(result).toEqual([\"00\", \"05\", \"10\", \"00\", \"05\", \"10\"]);\n });\n\n it(\"handles all options together\", () => {\n const result = generateNumbers(3, {\n interval: 2,\n padWithNItems: 1,\n repeatNTimes: 2,\n padNumbersWithZero: true,\n disableInfiniteScroll: false,\n });\n expect(result).toEqual([\"00\", \"02\", \"04\", \"00\", \"02\", \"04\"]);\n });\n });\n});\n\ndescribe(\"generate12HourNumbers\", () => {\n describe(\"basic functionality\", () => {\n it(\"generates all 24 hours with 1-hour interval\", () => {\n const result = generate12HourNumbers({\n interval: 1,\n padWithNItems: 0,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(24);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[11]).toBe(\"11 AM\");\n expect(result[12]).toBe(\"12 PM\");\n expect(result[23]).toBe(\"11 PM\");\n });\n\n it(\"generates hours with 2-hour interval\", () => {\n const result = generate12HourNumbers({\n interval: 2,\n padWithNItems: 0,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(12);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[5]).toBe(\"10 AM\");\n expect(result[6]).toBe(\"12 PM\");\n expect(result[11]).toBe(\"10 PM\");\n });\n\n it(\"generates hours with 3-hour interval\", () => {\n const result = generate12HourNumbers({\n interval: 3,\n padWithNItems: 0,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(8);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20079 AM\");\n expect(result[4]).toBe(\"12 PM\");\n expect(result[7]).toBe(\"\\u20079 PM\");\n });\n\n it(\"generates hours with 4-hour interval\", () => {\n const result = generate12HourNumbers({\n interval: 4,\n padWithNItems: 0,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(6);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[2]).toBe(\"\\u20078 AM\");\n expect(result[3]).toBe(\"12 PM\");\n expect(result[5]).toBe(\"\\u20078 PM\");\n });\n\n it(\"generates hours with 6-hour interval\", () => {\n const result = generate12HourNumbers({\n interval: 6,\n padWithNItems: 0,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(4);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"\\u20076 AM\");\n expect(result[2]).toBe(\"12 PM\");\n expect(result[3]).toBe(\"\\u20076 PM\");\n });\n });\n\n describe(\"padding with zeros\", () => {\n it(\"pads hours with zeros\", () => {\n const result = generate12HourNumbers({\n interval: 1,\n padWithNItems: 0,\n padNumbersWithZero: true,\n disableInfiniteScroll: false,\n });\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"01 AM\");\n expect(result[9]).toBe(\"09 AM\");\n expect(result[10]).toBe(\"10 AM\");\n expect(result[12]).toBe(\"12 PM\");\n });\n\n it(\"handles 12-hour format correctly with zero padding\", () => {\n const result = generate12HourNumbers({\n interval: 1,\n padWithNItems: 0,\n padNumbersWithZero: true,\n disableInfiniteScroll: false,\n });\n expect(result[12]).toBe(\"12 PM\"); // 12 PM should not be 00 PM\n expect(result[13]).toBe(\"01 PM\");\n });\n });\n\n describe(\"padding with empty items\", () => {\n it(\"adds padding at start and end when infinite scroll is disabled\", () => {\n const result = generate12HourNumbers({\n interval: 6,\n padWithNItems: 2,\n disableInfiniteScroll: true,\n });\n expect(result[0]).toBe(\"\");\n expect(result[1]).toBe(\"\");\n expect(result[2]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20076 AM\");\n expect(result[4]).toBe(\"12 PM\");\n expect(result[5]).toBe(\"\\u20076 PM\");\n expect(result[6]).toBe(\"\");\n expect(result[7]).toBe(\"\");\n expect(result).toHaveLength(8);\n });\n\n it(\"does not add padding when infinite scroll is enabled\", () => {\n const result = generate12HourNumbers({\n interval: 6,\n padWithNItems: 2,\n disableInfiniteScroll: false,\n });\n expect(result[0]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20076 PM\");\n expect(result).toHaveLength(4);\n });\n });\n\n describe(\"number repetition\", () => {\n it(\"repeats hours when repeatNTimes is 2\", () => {\n const result = generate12HourNumbers({\n interval: 6,\n padWithNItems: 0,\n repeatNTimes: 2,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(8);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20076 PM\");\n expect(result[4]).toBe(\"12 AM\");\n expect(result[7]).toBe(\"\\u20076 PM\");\n });\n\n it(\"repeats hours when repeatNTimes is 3\", () => {\n const result = generate12HourNumbers({\n interval: 12,\n padWithNItems: 0,\n repeatNTimes: 3,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(6);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"12 PM\");\n expect(result[2]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"12 PM\");\n expect(result[4]).toBe(\"12 AM\");\n expect(result[5]).toBe(\"12 PM\");\n });\n\n it(\"defaults to repeatNTimes of 1 when not provided\", () => {\n const result = generate12HourNumbers({\n interval: 12,\n padWithNItems: 0,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(2);\n });\n });\n\n describe(\"combined options\", () => {\n it(\"combines padding with zeros and empty items\", () => {\n const result = generate12HourNumbers({\n interval: 12,\n padWithNItems: 1,\n padNumbersWithZero: true,\n disableInfiniteScroll: true,\n });\n expect(result).toEqual([\"\", \"12 AM\", \"12 PM\", \"\"]);\n });\n\n it(\"combines all options\", () => {\n const result = generate12HourNumbers({\n interval: 6,\n padWithNItems: 1,\n padNumbersWithZero: true,\n repeatNTimes: 2,\n disableInfiniteScroll: false,\n });\n expect(result).toHaveLength(8);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"06 AM\");\n expect(result[2]).toBe(\"12 PM\");\n expect(result[3]).toBe(\"06 PM\");\n expect(result[4]).toBe(\"12 AM\");\n expect(result[7]).toBe(\"06 PM\");\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["generateNumbers","generate12HourNumbers","describe","it","result","disableInfiniteScroll","interval","padWithNItems","repeatNTimes","expect","toHaveLength","toEqual","padNumbersWithZero","toBe"],"sources":["generateNumbers.test.ts"],"sourcesContent":["import { generateNumbers, generate12HourNumbers } from \"../utils/generateNumbers\";\n\ndescribe(\"generateNumbers\", () => {\n describe(\"basic functionality\", () => {\n it(\"generates correct number of items\", () => {\n const result = generateNumbers(10, {\n disableInfiniteScroll: true,\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toHaveLength(10);\n });\n\n it(\"generates numbers with correct interval\", () => {\n const result = generateNumbers(5, {\n disableInfiniteScroll: true,\n interval: 2,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20072\", \"\\u20074\", \"\\u20076\", \"\\u20078\"]);\n });\n\n it(\"generates numbers with interval of 5\", () => {\n const result = generateNumbers(4, {\n disableInfiniteScroll: true,\n interval: 5,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20075\", \"10\", \"15\"]);\n });\n\n it(\"returns empty array when numberOfItems is 0\", () => {\n const result = generateNumbers(0, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([]);\n });\n\n it(\"returns empty array when numberOfItems is negative\", () => {\n const result = generateNumbers(-5, {\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([]);\n });\n });\n\n describe(\"padding with zeros\", () => {\n it(\"pads single-digit numbers with zeros\", () => {\n const result = generateNumbers(5, {\n disableInfiniteScroll: true,\n interval: 1,\n padNumbersWithZero: true,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"00\", \"01\", \"02\", \"03\", \"04\"]);\n });\n\n it(\"does not pad double-digit numbers\", () => {\n const result = generateNumbers(15, {\n disableInfiniteScroll: true,\n interval: 1,\n padNumbersWithZero: true,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result[0]).toBe(\"00\");\n expect(result[9]).toBe(\"09\");\n expect(result[10]).toBe(\"10\");\n expect(result[14]).toBe(\"14\");\n });\n\n it(\"pads with space when padNumbersWithZero is false\", () => {\n const result = generateNumbers(5, {\n disableInfiniteScroll: true,\n interval: 1,\n padNumbersWithZero: false,\n padWithNItems: 0,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20071\", \"\\u20072\", \"\\u20073\", \"\\u20074\"]);\n });\n });\n\n describe(\"padding with empty items\", () => {\n it(\"adds padding items at start and end when infinite scroll is disabled\", () => {\n const result = generateNumbers(3, {\n disableInfiniteScroll: true,\n interval: 1,\n padWithNItems: 2,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\", \"\", \"\\u20070\", \"\\u20071\", \"\\u20072\", \"\", \"\"]);\n expect(result).toHaveLength(7);\n });\n\n it(\"adds padding with 1 item\", () => {\n const result = generateNumbers(3, {\n disableInfiniteScroll: true,\n interval: 1,\n padWithNItems: 1,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\", \"\\u20070\", \"\\u20071\", \"\\u20072\", \"\"]);\n });\n\n it(\"adds padding with 3 items\", () => {\n const result = generateNumbers(2, {\n disableInfiniteScroll: true,\n interval: 1,\n padWithNItems: 3,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\", \"\", \"\", \"\\u20070\", \"\\u20071\", \"\", \"\", \"\"]);\n });\n });\n\n describe(\"number repetition\", () => {\n it(\"repeats numbers when repeatNTimes is 2\", () => {\n const result = generateNumbers(3, {\n disableInfiniteScroll: false,\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 2,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20071\", \"\\u20072\", \"\\u20070\", \"\\u20071\", \"\\u20072\"]);\n });\n\n it(\"repeats numbers when repeatNTimes is 3\", () => {\n const result = generateNumbers(2, {\n disableInfiniteScroll: false,\n interval: 1,\n padWithNItems: 0,\n repeatNTimes: 3,\n });\n expect(result).toEqual([\"\\u20070\", \"\\u20071\", \"\\u20070\", \"\\u20071\", \"\\u20070\", \"\\u20071\"]);\n });\n });\n\n describe(\"combined options\", () => {\n it(\"combines padding with zeros and empty items\", () => {\n const result = generateNumbers(3, {\n disableInfiniteScroll: true,\n interval: 1,\n padNumbersWithZero: true,\n padWithNItems: 1,\n repeatNTimes: 1,\n });\n expect(result).toEqual([\"\", \"00\", \"01\", \"02\", \"\"]);\n });\n\n it(\"combines interval, padding with zeros, and repetition\", () => {\n const result = generateNumbers(3, {\n disableInfiniteScroll: false,\n interval: 5,\n padNumbersWithZero: true,\n padWithNItems: 0,\n repeatNTimes: 2,\n });\n expect(result).toEqual([\"00\", \"05\", \"10\", \"00\", \"05\", \"10\"]);\n });\n\n it(\"handles all options together\", () => {\n const result = generateNumbers(3, {\n disableInfiniteScroll: false,\n interval: 2,\n padNumbersWithZero: true,\n padWithNItems: 1,\n repeatNTimes: 2,\n });\n expect(result).toEqual([\"00\", \"02\", \"04\", \"00\", \"02\", \"04\"]);\n });\n });\n});\n\ndescribe(\"generate12HourNumbers\", () => {\n describe(\"basic functionality\", () => {\n it(\"generates all 24 hours with 1-hour interval\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 1,\n padWithNItems: 0,\n });\n expect(result).toHaveLength(24);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[11]).toBe(\"11 AM\");\n expect(result[12]).toBe(\"12 PM\");\n expect(result[23]).toBe(\"11 PM\");\n });\n\n it(\"generates hours with 2-hour interval\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 2,\n padWithNItems: 0,\n });\n expect(result).toHaveLength(12);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[5]).toBe(\"10 AM\");\n expect(result[6]).toBe(\"12 PM\");\n expect(result[11]).toBe(\"10 PM\");\n });\n\n it(\"generates hours with 3-hour interval\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 3,\n padWithNItems: 0,\n });\n expect(result).toHaveLength(8);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20079 AM\");\n expect(result[4]).toBe(\"12 PM\");\n expect(result[7]).toBe(\"\\u20079 PM\");\n });\n\n it(\"generates hours with 4-hour interval\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 4,\n padWithNItems: 0,\n });\n expect(result).toHaveLength(6);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[2]).toBe(\"\\u20078 AM\");\n expect(result[3]).toBe(\"12 PM\");\n expect(result[5]).toBe(\"\\u20078 PM\");\n });\n\n it(\"generates hours with 6-hour interval\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 6,\n padWithNItems: 0,\n });\n expect(result).toHaveLength(4);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"\\u20076 AM\");\n expect(result[2]).toBe(\"12 PM\");\n expect(result[3]).toBe(\"\\u20076 PM\");\n });\n });\n\n describe(\"padding with zeros\", () => {\n it(\"pads hours with zeros\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 1,\n padNumbersWithZero: true,\n padWithNItems: 0,\n });\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"01 AM\");\n expect(result[9]).toBe(\"09 AM\");\n expect(result[10]).toBe(\"10 AM\");\n expect(result[12]).toBe(\"12 PM\");\n });\n\n it(\"handles 12-hour format correctly with zero padding\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 1,\n padNumbersWithZero: true,\n padWithNItems: 0,\n });\n expect(result[12]).toBe(\"12 PM\"); // 12 PM should not be 00 PM\n expect(result[13]).toBe(\"01 PM\");\n });\n });\n\n describe(\"padding with empty items\", () => {\n it(\"adds padding at start and end when infinite scroll is disabled\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: true,\n interval: 6,\n padWithNItems: 2,\n });\n expect(result[0]).toBe(\"\");\n expect(result[1]).toBe(\"\");\n expect(result[2]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20076 AM\");\n expect(result[4]).toBe(\"12 PM\");\n expect(result[5]).toBe(\"\\u20076 PM\");\n expect(result[6]).toBe(\"\");\n expect(result[7]).toBe(\"\");\n expect(result).toHaveLength(8);\n });\n\n it(\"does not add padding when infinite scroll is enabled\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 6,\n padWithNItems: 2,\n });\n expect(result[0]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20076 PM\");\n expect(result).toHaveLength(4);\n });\n });\n\n describe(\"number repetition\", () => {\n it(\"repeats hours when repeatNTimes is 2\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 6,\n padWithNItems: 0,\n repeatNTimes: 2,\n });\n expect(result).toHaveLength(8);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"\\u20076 PM\");\n expect(result[4]).toBe(\"12 AM\");\n expect(result[7]).toBe(\"\\u20076 PM\");\n });\n\n it(\"repeats hours when repeatNTimes is 3\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 12,\n padWithNItems: 0,\n repeatNTimes: 3,\n });\n expect(result).toHaveLength(6);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"12 PM\");\n expect(result[2]).toBe(\"12 AM\");\n expect(result[3]).toBe(\"12 PM\");\n expect(result[4]).toBe(\"12 AM\");\n expect(result[5]).toBe(\"12 PM\");\n });\n\n it(\"defaults to repeatNTimes of 1 when not provided\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 12,\n padWithNItems: 0,\n });\n expect(result).toHaveLength(2);\n });\n });\n\n describe(\"combined options\", () => {\n it(\"combines padding with zeros and empty items\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: true,\n interval: 12,\n padNumbersWithZero: true,\n padWithNItems: 1,\n });\n expect(result).toEqual([\"\", \"12 AM\", \"12 PM\", \"\"]);\n });\n\n it(\"combines all options\", () => {\n const result = generate12HourNumbers({\n disableInfiniteScroll: false,\n interval: 6,\n padNumbersWithZero: true,\n padWithNItems: 1,\n repeatNTimes: 2,\n });\n expect(result).toHaveLength(8);\n expect(result[0]).toBe(\"12 AM\");\n expect(result[1]).toBe(\"06 AM\");\n expect(result[2]).toBe(\"12 PM\");\n expect(result[3]).toBe(\"06 PM\");\n expect(result[4]).toBe(\"12 AM\");\n expect(result[7]).toBe(\"06 PM\");\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|