Fix Select component

Signed-off-by: danangarbansa <danang@canva.com>
This commit is contained in:
danangarbansa
2023-04-04 13:30:14 +10:00
parent 4cb4c6afd8
commit 451b7d7ee9
2 changed files with 14 additions and 4 deletions
@@ -54,4 +54,16 @@ describe('<Select />', () => {
fireEvent.click(option);
expect(input.textContent).toBe('test 1');
});
it('display the placeholder value when selected props updated to undefined', async () => {
const { getByTestId, rerender } = render(
<Select {...minProps} selected="test 1" />,
);
expect(getByTestId('select').textContent).toBe('test 1');
rerender(<Select {...minProps} selected={undefined} />);
expect(getByTestId('select').textContent).toBe('All results');
});
});
@@ -163,10 +163,8 @@ export function SelectComponent(props: SelectProps) {
}, [triggerReset, multiple]);
useEffect(() => {
if (selected !== undefined) {
setValue(selected);
}
}, [selected]);
setValue(selected || (multiple ? [] : ''));
}, [selected, multiple]);
const handleChange = (event: React.ChangeEvent<{ value: unknown }>) => {
setValue(event.target.value as SelectedItems);