From bacce0c651e3c3b049107e70efe0cb995f483318 Mon Sep 17 00:00:00 2001 From: eps1lon Date: Fri, 23 Apr 2021 10:23:54 +0200 Subject: [PATCH] Test click not setProps --- .../src/internal/SwitchBase.test.js | 36 +++++++++++-------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/packages/material-ui/src/internal/SwitchBase.test.js b/packages/material-ui/src/internal/SwitchBase.test.js index a39f7d1ae8b1e6..4c0890476fced4 100644 --- a/packages/material-ui/src/internal/SwitchBase.test.js +++ b/packages/material-ui/src/internal/SwitchBase.test.js @@ -194,23 +194,29 @@ describe('', () => { }); it('should call onChange when controlled', () => { - const checked = true; - const handleChange = spy(); - const { getByRole, setProps } = render( - , - ); + const defaultChecked = true; + function ControlledSwichBase() { + const [checked, setChecked] = React.useState(defaultChecked); - getByRole('checkbox').click(); - setProps({ checked: false }); + return ( + setChecked(event.target.checked)} + /> + ); + } - expect(handleChange.callCount).to.equal(1); - expect(handleChange.firstCall.args[0].target.checked).to.equal(!checked); + const { getByRole } = render(); + const checkbox = getByRole('checkbox'); + + act(() => { + checkbox.click(); + }); + + expect(checkbox).to.have.property('checked', !defaultChecked); }); it('should not change checkbox state when event is default prevented', () => {