diff --git a/packages/react/test-app/Pages/FormHelper/Events.jsx b/packages/react/test-app/Pages/FormHelper/Events.jsx index 61d4bf38e..83f5e7a4b 100644 --- a/packages/react/test-app/Pages/FormHelper/Events.jsx +++ b/packages/react/test-app/Pages/FormHelper/Events.jsx @@ -184,6 +184,16 @@ export default (props) => { form.post(page.url, callbacks()) } + const onSuccessResetValue = () => { + form.post(page.url, { + ...callbacks({ + onSuccess: (page) => { + form.reset() + }, + }), + }) + } + const onErrorProcessing = () => { form.post('/form-helper/events/errors', callbacks()) } @@ -246,6 +256,10 @@ export default (props) => { + + + @@ -394,4 +405,7 @@ Form was {$form.wasSuccessful ? '' : 'not '}successful Form was {$form.recentlySuccessful ? '' : 'not '}recently successful + + + diff --git a/packages/vue3/test-app/Pages/FormHelper/Events.vue b/packages/vue3/test-app/Pages/FormHelper/Events.vue index 8f68911bb..3ca88c30e 100644 --- a/packages/vue3/test-app/Pages/FormHelper/Events.vue +++ b/packages/vue3/test-app/Pages/FormHelper/Events.vue @@ -187,6 +187,16 @@ const onSuccessPromiseVisit = () => { }) } +const onSuccessResetValue = () => { + form.post(page.url, { + ...callbacks({ + onSuccess: (page) => { + form.reset() + }, + }), + }) +} + const onErrorVisit = () => { form.post('/form-helper/events/errors', { ...callbacks({ @@ -386,6 +396,7 @@ const progressNoFiles = () => { + @@ -397,5 +408,8 @@ const progressNoFiles = () => { Form was {{ form.wasSuccessful ? '' : 'not ' }}successful Form was {{ form.recentlySuccessful ? '' : 'not ' }}recently successful + + + diff --git a/tests/form-helper.spec.ts b/tests/form-helper.spec.ts index 1447e0b36..ebb1ddcb9 100644 --- a/tests/form-helper.spec.ts +++ b/tests/form-helper.spec.ts @@ -742,6 +742,22 @@ test.describe('Form Helper', () => { await expect(page.locator('.success-status')).toHaveText('Form was successful') await expect(page.locator('.recently-status')).toHaveText('Form was not recently successful') }) + + test('resets the input value to the default value', async ({ page }) => { + await expect(page.locator('.name-input')).toHaveValue('foo') + await expect(page.locator('.remember-input')).not.toBeChecked() + + await page.fill('.name-input', 'bar') + await page.check('.remember-input') + + await expect(page.locator('.name-input')).toHaveValue('bar') + await expect(page.locator('.remember-input')).toBeChecked() + + await clickAndWaitForResponse(page, 'onSuccess resets value', null, 'button') + + await expect(page.locator('.name-input')).toHaveValue('foo') + await expect(page.locator('.remember-input')).not.toBeChecked() + }) }) test.describe('onError', () => {