@@ -743,6 +743,48 @@ describe('normalizeOptions', () => {
743743 }
744744 } ) ;
745745
746+ it ( 'resolves global query mutators relative to the output workspace' , async ( ) => {
747+ const workspace = await createTempWorkspace ( ) ;
748+
749+ try {
750+ const outputWorkspace = path . join ( workspace , 'generated' ) ;
751+ const normalized = await normalizeOptions (
752+ {
753+ input : {
754+ target : {
755+ openapi : '3.1.0' ,
756+ info : { title : 'Test' , version : '1.0.0' } ,
757+ paths : { } ,
758+ } ,
759+ } ,
760+ output : {
761+ target : './api.ts' ,
762+ workspace : './generated' ,
763+ client : 'react-query' ,
764+ override : {
765+ query : {
766+ queryKey : './queryKey.ts' ,
767+ queryOptions : './queryOptions.ts' ,
768+ mutationOptions : './mutationOptions.ts' ,
769+ } ,
770+ } ,
771+ } ,
772+ } ,
773+ workspace ,
774+ ) ;
775+
776+ expect ( normalized . output . override . query ) . toMatchObject ( {
777+ queryKey : { path : path . join ( outputWorkspace , 'queryKey.ts' ) } ,
778+ queryOptions : { path : path . join ( outputWorkspace , 'queryOptions.ts' ) } ,
779+ mutationOptions : {
780+ path : path . join ( outputWorkspace , 'mutationOptions.ts' ) ,
781+ } ,
782+ } ) ;
783+ } finally {
784+ await rm ( workspace , { recursive : true , force : true } ) ;
785+ }
786+ } ) ;
787+
746788 it ( 'normalizes effect options without falling back to zod' , async ( ) => {
747789 const workspace = await createTempWorkspace ( ) ;
748790
0 commit comments