diff --git a/src/components/Form.spec.jsx b/src/components/Form.spec.jsx index 14ffe3e1a..e2efd69b9 100644 --- a/src/components/Form.spec.jsx +++ b/src/components/Form.spec.jsx @@ -114,3 +114,36 @@ test('Start form with object reference query param', async () => { const requestBody = await startSubmissionRequest.json(); expect(requestBody.initialDataReference).toBe('foo'); }); + +// Regression test for https://github.com/open-formulieren/open-forms/issues/4918 +test.each([ + { + introductionPageContent: '', + buttonText: 'Login with DigiD', + expectedUrl: + 'http://mock-digid.nl/login?next=http%3A%2F%2Flocalhost%2F%3F_start%3D1%26initial_data_reference%3Dfoo', + }, + { + introductionPageContent: 'foo', + buttonText: 'Continue', + expectedUrl: '/startpagina?initial_data_reference=foo', + }, +])( + 'Redirect to start page or introduction page should preserve initial_data_reference param', + async ({introductionPageContent, buttonText, expectedUrl}) => { + mswServer.use(mockAnalyticsToolConfigGet(), mockSubmissionPost(), mockSubmissionStepGet()); + + render( + + ); + + const loginLink = await screen.findByRole('link', {name: buttonText}); + expect(loginLink).toHaveAttribute('href', expectedUrl); + } +);