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","_interopRequireDefault","require","_reactNative","_reactNative2","_TimerPicker","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","describe","it","getByTestId","render","createElement","component","expect","toBeDefined","padWithNItems","queryByTestId","hideDays","hideMinutes","hideSeconds","dayPicker","minutePicker","secondPicker","toBeNull","CustomFlatList","props","FlatList","testID","queryAllByTestId","customFlatList","toHaveLength","hideHours","initialValue","hours","minutes","seconds","hourInterval","minuteInterval","secondInterval","getByText","hourLabel","minuteLabel","secondLabel","disabled","use12HourPicker","onDurationChangeMock","jest","fn","onDurationChange"],"sources":["TimerPicker.test.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { render } from \"@testing-library/react-native\";\nimport { FlatList } from \"react-native\";\n\nimport TimerPicker from \"../components/TimerPicker\";\n\ndescribe(\"TimerPicker\", () => {\n it(\"renders without crashing\", () => {\n const { getByTestId } = render(<TimerPicker />);\n const component = getByTestId(\"timer-picker\");\n expect(component).toBeDefined();\n });\n\n it(\"renders without crashing with negative padWithNItems\", () => {\n const { getByTestId } = render(<TimerPicker padWithNItems={-1} />);\n const component = getByTestId(\"timer-picker\");\n expect(component).toBeDefined();\n });\n\n it(\"hides days, minutes and seconds when respective hide props are provided\", () => {\n const { queryByTestId } = render(\n <TimerPicker hideDays hideMinutes hideSeconds />\n );\n const dayPicker = queryByTestId(\"duration-scroll-day\");\n const minutePicker = queryByTestId(\"duration-scroll-minute\");\n const secondPicker = queryByTestId(\"duration-scroll-second\");\n expect(dayPicker).toBeNull();\n expect(minutePicker).toBeNull();\n expect(secondPicker).toBeNull();\n });\n\n it(\"uses the custom FlatList component when provided\", () => {\n const CustomFlatList = (props) => (\n <FlatList {...props} testID=\"custom-flat-list\" />\n );\n const { queryAllByTestId } = render(\n <TimerPicker FlatList={CustomFlatList} />\n );\n const customFlatList = queryAllByTestId(\"custom-flat-list\");\n expect(customFlatList).toHaveLength(3);\n });\n\n it(\"renders all pickers by default (hours, minutes, seconds)\", () => {\n const { getByTestId } = render(<TimerPicker />);\n expect(getByTestId(\"duration-scroll-hour\")).toBeDefined();\n expect(getByTestId(\"duration-scroll-minute\")).toBeDefined();\n expect(getByTestId(\"duration-scroll-second\")).toBeDefined();\n });\n\n it(\"hides hours when hideHours is true\", () => {\n const { queryByTestId } = render(<TimerPicker hideHours />);\n expect(queryByTestId(\"duration-scroll-hour\")).toBeNull();\n });\n\n it(\"renders with custom initial value\", () => {\n const { getByTestId } = render(\n <TimerPicker initialValue={{ hours: 2, minutes: 30, seconds: 45 }} />\n );\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with hourInterval\", () => {\n const { getByTestId } = render(<TimerPicker hourInterval={2} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with minuteInterval\", () => {\n const { getByTestId } = render(<TimerPicker minuteInterval={15} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with secondInterval\", () => {\n const { getByTestId } = render(<TimerPicker secondInterval={5} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with custom labels\", () => {\n const { getByText } = render(\n <TimerPicker\n hourLabel=\"hrs\"\n minuteLabel=\"mins\"\n secondLabel=\"secs\"\n />\n );\n expect(getByText(\"hrs\")).toBeDefined();\n expect(getByText(\"mins\")).toBeDefined();\n expect(getByText(\"secs\")).toBeDefined();\n });\n\n it(\"renders with disabled state\", () => {\n const { getByTestId } = render(<TimerPicker disabled />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders LinearGradient when specified\", () => {\n const { getByTestId } = render(<TimerPicker use12HourPicker={false} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"handles combination of hide props\", () => {\n const { queryByTestId } = render(\n <TimerPicker hideHours hideSeconds />\n );\n expect(queryByTestId(\"duration-scroll-hour\")).toBeNull();\n expect(queryByTestId(\"duration-scroll-minute\")).toBeDefined();\n expect(queryByTestId(\"duration-scroll-second\")).toBeNull();\n });\n\n it(\"handles onDurationChange callback\", () => {\n const onDurationChangeMock = jest.fn();\n const { getByTestId } = render(\n <TimerPicker onDurationChange={onDurationChangeMock} />\n );\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with all hide props and days enabled\", () => {\n const { getByTestId, queryByTestId } = render(\n <TimerPicker hideDays={false} hideHours hideMinutes hideSeconds />\n );\n expect(getByTestId(\"duration-scroll-day\")).toBeDefined();\n expect(queryByTestId(\"duration-scroll-hour\")).toBeNull();\n expect(queryByTestId(\"duration-scroll-minute\")).toBeNull();\n expect(queryByTestId(\"duration-scroll-second\")).toBeNull();\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNative2","_TimerPicker","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","describe","it","getByTestId","render","createElement","component","expect","toBeDefined","padWithNItems","queryByTestId","hideDays","hideMinutes","hideSeconds","dayPicker","minutePicker","secondPicker","toBeNull","CustomFlatList","props","FlatList","testID","queryAllByTestId","customFlatList","toHaveLength","hideHours","initialValue","hours","minutes","seconds","hourInterval","minuteInterval","secondInterval","getByText","hourLabel","minuteLabel","secondLabel","use12HourPicker","onDurationChangeMock","jest","fn","onDurationChange"],"sources":["TimerPicker.test.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from \"react\";\n\nimport { render } from \"@testing-library/react-native\";\nimport { FlatList } from \"react-native\";\n\nimport TimerPicker from \"../components/TimerPicker\";\n\ndescribe(\"TimerPicker\", () => {\n it(\"renders without crashing\", () => {\n const { getByTestId } = render(<TimerPicker />);\n const component = getByTestId(\"timer-picker\");\n expect(component).toBeDefined();\n });\n\n it(\"renders without crashing with negative padWithNItems\", () => {\n const { getByTestId } = render(<TimerPicker padWithNItems={-1} />);\n const component = getByTestId(\"timer-picker\");\n expect(component).toBeDefined();\n });\n\n it(\"hides days, minutes and seconds when respective hide props are provided\", () => {\n const { queryByTestId } = render(<TimerPicker hideDays hideMinutes hideSeconds />);\n const dayPicker = queryByTestId(\"duration-scroll-day\");\n const minutePicker = queryByTestId(\"duration-scroll-minute\");\n const secondPicker = queryByTestId(\"duration-scroll-second\");\n expect(dayPicker).toBeNull();\n expect(minutePicker).toBeNull();\n expect(secondPicker).toBeNull();\n });\n\n it(\"uses the custom FlatList component when provided\", () => {\n const CustomFlatList = (props: any) => <FlatList {...props} testID=\"custom-flat-list\" />;\n const { queryAllByTestId } = render(<TimerPicker FlatList={CustomFlatList} />);\n const customFlatList = queryAllByTestId(\"custom-flat-list\");\n expect(customFlatList).toHaveLength(3);\n });\n\n it(\"renders all pickers by default (hours, minutes, seconds)\", () => {\n const { getByTestId } = render(<TimerPicker />);\n expect(getByTestId(\"duration-scroll-hour\")).toBeDefined();\n expect(getByTestId(\"duration-scroll-minute\")).toBeDefined();\n expect(getByTestId(\"duration-scroll-second\")).toBeDefined();\n });\n\n it(\"hides hours when hideHours is true\", () => {\n const { queryByTestId } = render(<TimerPicker hideHours />);\n expect(queryByTestId(\"duration-scroll-hour\")).toBeNull();\n });\n\n it(\"renders with custom initial value\", () => {\n const { getByTestId } = render(\n <TimerPicker initialValue={{ hours: 2, minutes: 30, seconds: 45 }} />\n );\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with hourInterval\", () => {\n const { getByTestId } = render(<TimerPicker hourInterval={2} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with minuteInterval\", () => {\n const { getByTestId } = render(<TimerPicker minuteInterval={15} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with secondInterval\", () => {\n const { getByTestId } = render(<TimerPicker secondInterval={5} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with custom labels\", () => {\n const { getByText } = render(\n <TimerPicker hourLabel=\"hrs\" minuteLabel=\"mins\" secondLabel=\"secs\" />\n );\n expect(getByText(\"hrs\")).toBeDefined();\n expect(getByText(\"mins\")).toBeDefined();\n expect(getByText(\"secs\")).toBeDefined();\n });\n\n it(\"renders LinearGradient when specified\", () => {\n const { getByTestId } = render(<TimerPicker use12HourPicker={false} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"handles combination of hide props\", () => {\n const { queryByTestId } = render(<TimerPicker hideHours hideSeconds />);\n expect(queryByTestId(\"duration-scroll-hour\")).toBeNull();\n expect(queryByTestId(\"duration-scroll-minute\")).toBeDefined();\n expect(queryByTestId(\"duration-scroll-second\")).toBeNull();\n });\n\n it(\"handles onDurationChange callback\", () => {\n const onDurationChangeMock = jest.fn();\n const { getByTestId } = render(<TimerPicker onDurationChange={onDurationChangeMock} />);\n expect(getByTestId(\"timer-picker\")).toBeDefined();\n });\n\n it(\"renders with all hide props and days enabled\", () => {\n const { getByTestId, queryByTestId } = render(\n <TimerPicker hideDays={false} hideHours hideMinutes hideSeconds />\n );\n expect(getByTestId(\"duration-scroll-day\")).toBeDefined();\n expect(queryByTestId(\"duration-scroll-hour\")).toBeNull();\n expect(queryByTestId(\"duration-scroll-minute\")).toBeNull();\n expect(queryByTestId(\"duration-scroll-second\")).toBeNull();\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,10 +18,10 @@ describe("TimerPickerModal", () => {
|
|
|
18
18
|
(0, _reactNative.cleanup)();
|
|
19
19
|
});
|
|
20
20
|
const defaultProps = {
|
|
21
|
-
|
|
22
|
-
setIsVisible: jest.fn(),
|
|
21
|
+
onCancel: mockOnCancel,
|
|
23
22
|
onConfirm: mockOnConfirm,
|
|
24
|
-
|
|
23
|
+
setIsVisible: jest.fn(),
|
|
24
|
+
visible: true
|
|
25
25
|
};
|
|
26
26
|
it("renders without crashing", () => {
|
|
27
27
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNative2","_TimerPickerModal","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","describe","mockOnConfirm","jest","fn","mockOnCancel","beforeEach","useFakeTimers","afterEach","runOnlyPendingTimers","useRealTimers","cleanup","defaultProps","visible","setIsVisible","onConfirm","onCancel","it","getByTestId","render","createElement","component","expect","toBeDefined","getByText","confirmButton","fireEvent","press","toHaveBeenCalled","cancelButton","setIsVisibleMock","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","TouchableOpacity","testID","Text","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","_interopRequireDefault","require","_reactNative","_reactNative2","_TimerPickerModal","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","describe","mockOnConfirm","jest","fn","mockOnCancel","beforeEach","useFakeTimers","afterEach","runOnlyPendingTimers","useRealTimers","cleanup","defaultProps","onCancel","onConfirm","setIsVisible","visible","it","getByTestId","render","createElement","component","expect","toBeDefined","getByText","confirmButton","fireEvent","press","toHaveBeenCalled","cancelButton","setIsVisibleMock","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","TouchableOpacity","testID","Text","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","require","describe","it","expect","colorToRgba","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","require","describe","it","expect","colorToRgba","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":[]}
|
|
@@ -5,28 +5,28 @@ describe("generateNumbers", () => {
|
|
|
5
5
|
describe("basic functionality", () => {
|
|
6
6
|
it("generates correct number of items", () => {
|
|
7
7
|
const result = (0, _generateNumbers.generateNumbers)(10, {
|
|
8
|
+
disableInfiniteScroll: true,
|
|
8
9
|
interval: 1,
|
|
9
10
|
padWithNItems: 0,
|
|
10
|
-
repeatNTimes: 1
|
|
11
|
-
disableInfiniteScroll: true
|
|
11
|
+
repeatNTimes: 1
|
|
12
12
|
});
|
|
13
13
|
expect(result).toHaveLength(10);
|
|
14
14
|
});
|
|
15
15
|
it("generates numbers with correct interval", () => {
|
|
16
16
|
const result = (0, _generateNumbers.generateNumbers)(5, {
|
|
17
|
+
disableInfiniteScroll: true,
|
|
17
18
|
interval: 2,
|
|
18
19
|
padWithNItems: 0,
|
|
19
|
-
repeatNTimes: 1
|
|
20
|
-
disableInfiniteScroll: true
|
|
20
|
+
repeatNTimes: 1
|
|
21
21
|
});
|
|
22
22
|
expect(result).toEqual(["\u20070", "\u20072", "\u20074", "\u20076", "\u20078"]);
|
|
23
23
|
});
|
|
24
24
|
it("generates numbers with interval of 5", () => {
|
|
25
25
|
const result = (0, _generateNumbers.generateNumbers)(4, {
|
|
26
|
+
disableInfiniteScroll: true,
|
|
26
27
|
interval: 5,
|
|
27
28
|
padWithNItems: 0,
|
|
28
|
-
repeatNTimes: 1
|
|
29
|
-
disableInfiniteScroll: true
|
|
29
|
+
repeatNTimes: 1
|
|
30
30
|
});
|
|
31
31
|
expect(result).toEqual(["\u20070", "\u20075", "10", "15"]);
|
|
32
32
|
});
|
|
@@ -50,21 +50,21 @@ describe("generateNumbers", () => {
|
|
|
50
50
|
describe("padding with zeros", () => {
|
|
51
51
|
it("pads single-digit numbers with zeros", () => {
|
|
52
52
|
const result = (0, _generateNumbers.generateNumbers)(5, {
|
|
53
|
+
disableInfiniteScroll: true,
|
|
53
54
|
interval: 1,
|
|
54
|
-
padWithNItems: 0,
|
|
55
|
-
repeatNTimes: 1,
|
|
56
55
|
padNumbersWithZero: true,
|
|
57
|
-
|
|
56
|
+
padWithNItems: 0,
|
|
57
|
+
repeatNTimes: 1
|
|
58
58
|
});
|
|
59
59
|
expect(result).toEqual(["00", "01", "02", "03", "04"]);
|
|
60
60
|
});
|
|
61
61
|
it("does not pad double-digit numbers", () => {
|
|
62
62
|
const result = (0, _generateNumbers.generateNumbers)(15, {
|
|
63
|
+
disableInfiniteScroll: true,
|
|
63
64
|
interval: 1,
|
|
64
|
-
padWithNItems: 0,
|
|
65
|
-
repeatNTimes: 1,
|
|
66
65
|
padNumbersWithZero: true,
|
|
67
|
-
|
|
66
|
+
padWithNItems: 0,
|
|
67
|
+
repeatNTimes: 1
|
|
68
68
|
});
|
|
69
69
|
expect(result[0]).toBe("00");
|
|
70
70
|
expect(result[9]).toBe("09");
|
|
@@ -73,11 +73,11 @@ describe("generateNumbers", () => {
|
|
|
73
73
|
});
|
|
74
74
|
it("pads with space when padNumbersWithZero is false", () => {
|
|
75
75
|
const result = (0, _generateNumbers.generateNumbers)(5, {
|
|
76
|
+
disableInfiniteScroll: true,
|
|
76
77
|
interval: 1,
|
|
77
|
-
padWithNItems: 0,
|
|
78
|
-
repeatNTimes: 1,
|
|
79
78
|
padNumbersWithZero: false,
|
|
80
|
-
|
|
79
|
+
padWithNItems: 0,
|
|
80
|
+
repeatNTimes: 1
|
|
81
81
|
});
|
|
82
82
|
expect(result).toEqual(["\u20070", "\u20071", "\u20072", "\u20073", "\u20074"]);
|
|
83
83
|
});
|
|
@@ -85,29 +85,29 @@ describe("generateNumbers", () => {
|
|
|
85
85
|
describe("padding with empty items", () => {
|
|
86
86
|
it("adds padding items at start and end when infinite scroll is disabled", () => {
|
|
87
87
|
const result = (0, _generateNumbers.generateNumbers)(3, {
|
|
88
|
+
disableInfiniteScroll: true,
|
|
88
89
|
interval: 1,
|
|
89
90
|
padWithNItems: 2,
|
|
90
|
-
repeatNTimes: 1
|
|
91
|
-
disableInfiniteScroll: true
|
|
91
|
+
repeatNTimes: 1
|
|
92
92
|
});
|
|
93
93
|
expect(result).toEqual(["", "", "\u20070", "\u20071", "\u20072", "", ""]);
|
|
94
94
|
expect(result).toHaveLength(7);
|
|
95
95
|
});
|
|
96
96
|
it("adds padding with 1 item", () => {
|
|
97
97
|
const result = (0, _generateNumbers.generateNumbers)(3, {
|
|
98
|
+
disableInfiniteScroll: true,
|
|
98
99
|
interval: 1,
|
|
99
100
|
padWithNItems: 1,
|
|
100
|
-
repeatNTimes: 1
|
|
101
|
-
disableInfiniteScroll: true
|
|
101
|
+
repeatNTimes: 1
|
|
102
102
|
});
|
|
103
103
|
expect(result).toEqual(["", "\u20070", "\u20071", "\u20072", ""]);
|
|
104
104
|
});
|
|
105
105
|
it("adds padding with 3 items", () => {
|
|
106
106
|
const result = (0, _generateNumbers.generateNumbers)(2, {
|
|
107
|
+
disableInfiniteScroll: true,
|
|
107
108
|
interval: 1,
|
|
108
109
|
padWithNItems: 3,
|
|
109
|
-
repeatNTimes: 1
|
|
110
|
-
disableInfiniteScroll: true
|
|
110
|
+
repeatNTimes: 1
|
|
111
111
|
});
|
|
112
112
|
expect(result).toEqual(["", "", "", "\u20070", "\u20071", "", "", ""]);
|
|
113
113
|
});
|
|
@@ -115,19 +115,19 @@ describe("generateNumbers", () => {
|
|
|
115
115
|
describe("number repetition", () => {
|
|
116
116
|
it("repeats numbers when repeatNTimes is 2", () => {
|
|
117
117
|
const result = (0, _generateNumbers.generateNumbers)(3, {
|
|
118
|
+
disableInfiniteScroll: false,
|
|
118
119
|
interval: 1,
|
|
119
120
|
padWithNItems: 0,
|
|
120
|
-
repeatNTimes: 2
|
|
121
|
-
disableInfiniteScroll: false
|
|
121
|
+
repeatNTimes: 2
|
|
122
122
|
});
|
|
123
123
|
expect(result).toEqual(["\u20070", "\u20071", "\u20072", "\u20070", "\u20071", "\u20072"]);
|
|
124
124
|
});
|
|
125
125
|
it("repeats numbers when repeatNTimes is 3", () => {
|
|
126
126
|
const result = (0, _generateNumbers.generateNumbers)(2, {
|
|
127
|
+
disableInfiniteScroll: false,
|
|
127
128
|
interval: 1,
|
|
128
129
|
padWithNItems: 0,
|
|
129
|
-
repeatNTimes: 3
|
|
130
|
-
disableInfiniteScroll: false
|
|
130
|
+
repeatNTimes: 3
|
|
131
131
|
});
|
|
132
132
|
expect(result).toEqual(["\u20070", "\u20071", "\u20070", "\u20071", "\u20070", "\u20071"]);
|
|
133
133
|
});
|
|
@@ -135,31 +135,31 @@ describe("generateNumbers", () => {
|
|
|
135
135
|
describe("combined options", () => {
|
|
136
136
|
it("combines padding with zeros and empty items", () => {
|
|
137
137
|
const result = (0, _generateNumbers.generateNumbers)(3, {
|
|
138
|
+
disableInfiniteScroll: true,
|
|
138
139
|
interval: 1,
|
|
139
|
-
padWithNItems: 1,
|
|
140
|
-
repeatNTimes: 1,
|
|
141
140
|
padNumbersWithZero: true,
|
|
142
|
-
|
|
141
|
+
padWithNItems: 1,
|
|
142
|
+
repeatNTimes: 1
|
|
143
143
|
});
|
|
144
144
|
expect(result).toEqual(["", "00", "01", "02", ""]);
|
|
145
145
|
});
|
|
146
146
|
it("combines interval, padding with zeros, and repetition", () => {
|
|
147
147
|
const result = (0, _generateNumbers.generateNumbers)(3, {
|
|
148
|
+
disableInfiniteScroll: false,
|
|
148
149
|
interval: 5,
|
|
149
|
-
padWithNItems: 0,
|
|
150
|
-
repeatNTimes: 2,
|
|
151
150
|
padNumbersWithZero: true,
|
|
152
|
-
|
|
151
|
+
padWithNItems: 0,
|
|
152
|
+
repeatNTimes: 2
|
|
153
153
|
});
|
|
154
154
|
expect(result).toEqual(["00", "05", "10", "00", "05", "10"]);
|
|
155
155
|
});
|
|
156
156
|
it("handles all options together", () => {
|
|
157
157
|
const result = (0, _generateNumbers.generateNumbers)(3, {
|
|
158
|
+
disableInfiniteScroll: false,
|
|
158
159
|
interval: 2,
|
|
159
|
-
padWithNItems: 1,
|
|
160
|
-
repeatNTimes: 2,
|
|
161
160
|
padNumbersWithZero: true,
|
|
162
|
-
|
|
161
|
+
padWithNItems: 1,
|
|
162
|
+
repeatNTimes: 2
|
|
163
163
|
});
|
|
164
164
|
expect(result).toEqual(["00", "02", "04", "00", "02", "04"]);
|
|
165
165
|
});
|
|
@@ -169,9 +169,9 @@ describe("generate12HourNumbers", () => {
|
|
|
169
169
|
describe("basic functionality", () => {
|
|
170
170
|
it("generates all 24 hours with 1-hour interval", () => {
|
|
171
171
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
172
|
+
disableInfiniteScroll: false,
|
|
172
173
|
interval: 1,
|
|
173
|
-
padWithNItems: 0
|
|
174
|
-
disableInfiniteScroll: false
|
|
174
|
+
padWithNItems: 0
|
|
175
175
|
});
|
|
176
176
|
expect(result).toHaveLength(24);
|
|
177
177
|
expect(result[0]).toBe("12 AM");
|
|
@@ -181,9 +181,9 @@ describe("generate12HourNumbers", () => {
|
|
|
181
181
|
});
|
|
182
182
|
it("generates hours with 2-hour interval", () => {
|
|
183
183
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
184
|
+
disableInfiniteScroll: false,
|
|
184
185
|
interval: 2,
|
|
185
|
-
padWithNItems: 0
|
|
186
|
-
disableInfiniteScroll: false
|
|
186
|
+
padWithNItems: 0
|
|
187
187
|
});
|
|
188
188
|
expect(result).toHaveLength(12);
|
|
189
189
|
expect(result[0]).toBe("12 AM");
|
|
@@ -193,9 +193,9 @@ describe("generate12HourNumbers", () => {
|
|
|
193
193
|
});
|
|
194
194
|
it("generates hours with 3-hour interval", () => {
|
|
195
195
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
196
|
+
disableInfiniteScroll: false,
|
|
196
197
|
interval: 3,
|
|
197
|
-
padWithNItems: 0
|
|
198
|
-
disableInfiniteScroll: false
|
|
198
|
+
padWithNItems: 0
|
|
199
199
|
});
|
|
200
200
|
expect(result).toHaveLength(8);
|
|
201
201
|
expect(result[0]).toBe("12 AM");
|
|
@@ -205,9 +205,9 @@ describe("generate12HourNumbers", () => {
|
|
|
205
205
|
});
|
|
206
206
|
it("generates hours with 4-hour interval", () => {
|
|
207
207
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
208
|
+
disableInfiniteScroll: false,
|
|
208
209
|
interval: 4,
|
|
209
|
-
padWithNItems: 0
|
|
210
|
-
disableInfiniteScroll: false
|
|
210
|
+
padWithNItems: 0
|
|
211
211
|
});
|
|
212
212
|
expect(result).toHaveLength(6);
|
|
213
213
|
expect(result[0]).toBe("12 AM");
|
|
@@ -217,9 +217,9 @@ describe("generate12HourNumbers", () => {
|
|
|
217
217
|
});
|
|
218
218
|
it("generates hours with 6-hour interval", () => {
|
|
219
219
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
220
|
+
disableInfiniteScroll: false,
|
|
220
221
|
interval: 6,
|
|
221
|
-
padWithNItems: 0
|
|
222
|
-
disableInfiniteScroll: false
|
|
222
|
+
padWithNItems: 0
|
|
223
223
|
});
|
|
224
224
|
expect(result).toHaveLength(4);
|
|
225
225
|
expect(result[0]).toBe("12 AM");
|
|
@@ -231,10 +231,10 @@ describe("generate12HourNumbers", () => {
|
|
|
231
231
|
describe("padding with zeros", () => {
|
|
232
232
|
it("pads hours with zeros", () => {
|
|
233
233
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
234
|
+
disableInfiniteScroll: false,
|
|
234
235
|
interval: 1,
|
|
235
|
-
padWithNItems: 0,
|
|
236
236
|
padNumbersWithZero: true,
|
|
237
|
-
|
|
237
|
+
padWithNItems: 0
|
|
238
238
|
});
|
|
239
239
|
expect(result[0]).toBe("12 AM");
|
|
240
240
|
expect(result[1]).toBe("01 AM");
|
|
@@ -244,10 +244,10 @@ describe("generate12HourNumbers", () => {
|
|
|
244
244
|
});
|
|
245
245
|
it("handles 12-hour format correctly with zero padding", () => {
|
|
246
246
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
247
|
+
disableInfiniteScroll: false,
|
|
247
248
|
interval: 1,
|
|
248
|
-
padWithNItems: 0,
|
|
249
249
|
padNumbersWithZero: true,
|
|
250
|
-
|
|
250
|
+
padWithNItems: 0
|
|
251
251
|
});
|
|
252
252
|
expect(result[12]).toBe("12 PM"); // 12 PM should not be 00 PM
|
|
253
253
|
expect(result[13]).toBe("01 PM");
|
|
@@ -256,9 +256,9 @@ describe("generate12HourNumbers", () => {
|
|
|
256
256
|
describe("padding with empty items", () => {
|
|
257
257
|
it("adds padding at start and end when infinite scroll is disabled", () => {
|
|
258
258
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
259
|
+
disableInfiniteScroll: true,
|
|
259
260
|
interval: 6,
|
|
260
|
-
padWithNItems: 2
|
|
261
|
-
disableInfiniteScroll: true
|
|
261
|
+
padWithNItems: 2
|
|
262
262
|
});
|
|
263
263
|
expect(result[0]).toBe("");
|
|
264
264
|
expect(result[1]).toBe("");
|
|
@@ -272,9 +272,9 @@ describe("generate12HourNumbers", () => {
|
|
|
272
272
|
});
|
|
273
273
|
it("does not add padding when infinite scroll is enabled", () => {
|
|
274
274
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
275
|
+
disableInfiniteScroll: false,
|
|
275
276
|
interval: 6,
|
|
276
|
-
padWithNItems: 2
|
|
277
|
-
disableInfiniteScroll: false
|
|
277
|
+
padWithNItems: 2
|
|
278
278
|
});
|
|
279
279
|
expect(result[0]).toBe("12 AM");
|
|
280
280
|
expect(result[3]).toBe("\u20076 PM");
|
|
@@ -284,10 +284,10 @@ describe("generate12HourNumbers", () => {
|
|
|
284
284
|
describe("number repetition", () => {
|
|
285
285
|
it("repeats hours when repeatNTimes is 2", () => {
|
|
286
286
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
287
|
+
disableInfiniteScroll: false,
|
|
287
288
|
interval: 6,
|
|
288
289
|
padWithNItems: 0,
|
|
289
|
-
repeatNTimes: 2
|
|
290
|
-
disableInfiniteScroll: false
|
|
290
|
+
repeatNTimes: 2
|
|
291
291
|
});
|
|
292
292
|
expect(result).toHaveLength(8);
|
|
293
293
|
expect(result[0]).toBe("12 AM");
|
|
@@ -297,10 +297,10 @@ describe("generate12HourNumbers", () => {
|
|
|
297
297
|
});
|
|
298
298
|
it("repeats hours when repeatNTimes is 3", () => {
|
|
299
299
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
300
|
+
disableInfiniteScroll: false,
|
|
300
301
|
interval: 12,
|
|
301
302
|
padWithNItems: 0,
|
|
302
|
-
repeatNTimes: 3
|
|
303
|
-
disableInfiniteScroll: false
|
|
303
|
+
repeatNTimes: 3
|
|
304
304
|
});
|
|
305
305
|
expect(result).toHaveLength(6);
|
|
306
306
|
expect(result[0]).toBe("12 AM");
|
|
@@ -312,9 +312,9 @@ describe("generate12HourNumbers", () => {
|
|
|
312
312
|
});
|
|
313
313
|
it("defaults to repeatNTimes of 1 when not provided", () => {
|
|
314
314
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
315
|
+
disableInfiniteScroll: false,
|
|
315
316
|
interval: 12,
|
|
316
|
-
padWithNItems: 0
|
|
317
|
-
disableInfiniteScroll: false
|
|
317
|
+
padWithNItems: 0
|
|
318
318
|
});
|
|
319
319
|
expect(result).toHaveLength(2);
|
|
320
320
|
});
|
|
@@ -322,20 +322,20 @@ describe("generate12HourNumbers", () => {
|
|
|
322
322
|
describe("combined options", () => {
|
|
323
323
|
it("combines padding with zeros and empty items", () => {
|
|
324
324
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
325
|
+
disableInfiniteScroll: true,
|
|
325
326
|
interval: 12,
|
|
326
|
-
padWithNItems: 1,
|
|
327
327
|
padNumbersWithZero: true,
|
|
328
|
-
|
|
328
|
+
padWithNItems: 1
|
|
329
329
|
});
|
|
330
330
|
expect(result).toEqual(["", "12 AM", "12 PM", ""]);
|
|
331
331
|
});
|
|
332
332
|
it("combines all options", () => {
|
|
333
333
|
const result = (0, _generateNumbers.generate12HourNumbers)({
|
|
334
|
+
disableInfiniteScroll: false,
|
|
334
335
|
interval: 6,
|
|
335
|
-
padWithNItems: 1,
|
|
336
336
|
padNumbersWithZero: true,
|
|
337
|
-
|
|
338
|
-
|
|
337
|
+
padWithNItems: 1,
|
|
338
|
+
repeatNTimes: 2
|
|
339
339
|
});
|
|
340
340
|
expect(result).toHaveLength(8);
|
|
341
341
|
expect(result[0]).toBe("12 AM");
|