@@ -98,6 +98,7 @@ const createMockSignUpRenderProps = (overrides: Partial<MockSignUpRenderProps> =
9898
9999let mockSignUpRenderProps : MockSignUpRenderProps = createMockSignUpRenderProps ( ) ;
100100let capturedOnFlowChange : ( ( response : unknown ) => void ) | undefined ;
101+ let capturedAfterSignUpUrl : string | undefined ;
101102
102103vi . mock ( '@thunderid/react' , async ( ) => {
103104 const actual = await vi . importActual ( '@thunderid/react' ) ;
@@ -106,11 +107,14 @@ vi.mock('@thunderid/react', async () => {
106107 SignUp : ( {
107108 children,
108109 onFlowChange = undefined ,
110+ afterSignUpUrl = undefined ,
109111 } : {
110112 children : ( props : typeof mockSignUpRenderProps ) => React . ReactNode ;
111113 onFlowChange ?: ( response : unknown ) => void ;
114+ afterSignUpUrl ?: string ;
112115 } ) => {
113116 capturedOnFlowChange = onFlowChange ;
117+ capturedAfterSignUpUrl = afterSignUpUrl ;
114118 return < div data-testid = "thunderid-signup" > { children ( mockSignUpRenderProps ) } </ div > ;
115119 } ,
116120 EmbeddedFlowComponentType : {
@@ -135,6 +139,7 @@ describe('SignUpBox', () => {
135139 } ) ;
136140 mockSignUpRenderProps = createMockSignUpRenderProps ( ) ;
137141 capturedOnFlowChange = undefined ;
142+ capturedAfterSignUpUrl = undefined ;
138143 } ) ;
139144
140145 it ( 'renders without crashing' , ( ) => {
@@ -545,6 +550,12 @@ describe('SignUpBox', () => {
545550 expect ( screen . getByText ( 'Sign in' ) ) . toBeInTheDocument ( ) ;
546551 } ) ;
547552
553+ it ( 'passes afterSignUpUrl as an absolute URL with origin and BASE_URL prefix to SignUp component' , ( ) => {
554+ render ( < SignUpBox /> ) ;
555+ const expectedUrl = `${ window . location . origin } ${ import . meta. env . BASE_URL . replace ( / \/ $ / , '' ) } /signin` ;
556+ expect ( capturedAfterSignUpUrl ) . toBe ( expectedUrl ) ;
557+ } ) ;
558+
548559 it ( 'navigates to sign in page when clicking sign in link' , async ( ) => {
549560 mockSignUpRenderProps = createMockSignUpRenderProps ( {
550561 components : [ { id : 'block' , type : 'BLOCK' , components : [ ] } ] ,
0 commit comments