Skip to content

Commit a832107

Browse files
test: add checked true case
1 parent ab2aade commit a832107

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed

src/ui/checkbox.test.tsx

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,3 +231,51 @@ describe('Checkbox, Radio & Switch components ', () => {
231231
expect(screen.queryByTestId(SWITCH_LABEL)).not.toBeOnTheScreen();
232232
});
233233
});
234+
235+
it('<Checkbox /> renders as checked when checked prop is true', () => {
236+
const mockOnChange = jest.fn((checked) => checked);
237+
render(
238+
<Checkbox
239+
testID="checkbox"
240+
onChange={mockOnChange}
241+
checked={true}
242+
accessibilityLabel="agree"
243+
accessibilityHint="toggle Agree"
244+
/>
245+
);
246+
expect(screen.getByTestId('checkbox')).toBeChecked();
247+
fireEvent.press(screen.getByTestId('checkbox'));
248+
expect(mockOnChange).toHaveBeenCalledWith(false); // Checkbox should toggle to unchecked
249+
});
250+
251+
it('<Radio /> renders as checked when checked prop is true', () => {
252+
const mockOnChange = jest.fn((checked) => checked);
253+
render(
254+
<Radio
255+
testID="radio"
256+
onChange={mockOnChange}
257+
checked={true}
258+
accessibilityLabel="agree"
259+
accessibilityHint="toggle Agree"
260+
/>
261+
);
262+
expect(screen.getByTestId('radio')).toBeChecked();
263+
fireEvent.press(screen.getByTestId('radio'));
264+
expect(mockOnChange).toHaveBeenCalledWith(false); // Radio should toggle to unchecked
265+
});
266+
267+
it('<Switch /> renders as checked when checked prop is true', () => {
268+
const mockOnChange = jest.fn((checked) => checked);
269+
render(
270+
<Switch
271+
testID="switch"
272+
onChange={mockOnChange}
273+
checked={true}
274+
accessibilityLabel="agree"
275+
accessibilityHint="toggle Agree"
276+
/>
277+
);
278+
expect(screen.getByTestId('switch').props.accessibilityState.checked).toBe(true);
279+
fireEvent.press(screen.getByTestId('switch'));
280+
expect(mockOnChange).toHaveBeenCalledWith(false); // Switch should toggle to unchecked
281+
});

0 commit comments

Comments
 (0)