@@ -344,4 +344,54 @@ describe("Task Runs V2", () => {
344344      expect ( result2 ) . toEqual ( [ ] ) ; 
345345    } 
346346  ) ; 
347+ 
348+   clickhouseTest ( 
349+     "should be able to insert payloads with a duplicate path" , 
350+     async  ( {  clickhouseContainer } )  =>  { 
351+       const  client  =  new  ClickhouseClient ( { 
352+         name : "test" , 
353+         url : clickhouseContainer . getConnectionUrl ( ) , 
354+       } ) ; 
355+ 
356+       const  insertPayloads  =  insertRawTaskRunPayloads ( client ,  { 
357+         async_insert : 0 ,  // turn off async insert for this test 
358+       } ) ; 
359+ 
360+       const  [ insertPayloadsError ,  insertPayloadsResult ]  =  await  insertPayloads ( [ 
361+         { 
362+           run_id : "run_1234" , 
363+           created_at : Date . now ( ) , 
364+           payload : { 
365+             data : { 
366+               title : { 
367+                 id : "123" , 
368+               } , 
369+               "title.id" : 123 , 
370+             } , 
371+           } , 
372+         } , 
373+       ] ) ; 
374+ 
375+       expect ( insertPayloadsError ) . toBeNull ( ) ; 
376+       expect ( insertPayloadsResult ) . toEqual ( expect . objectContaining ( {  executed : true  } ) ) ; 
377+       expect ( insertPayloadsResult ?. summary ?. written_rows ) . toEqual ( "1" ) ; 
378+ 
379+       const  queryPayloads  =  client . query ( { 
380+         name : "query-raw-task-run-payloads" , 
381+         query : "SELECT * FROM trigger_dev.raw_task_runs_payload_v1" , 
382+         schema : z . object ( { 
383+           run_id : z . string ( ) , 
384+           created_at : z . coerce . date ( ) , 
385+           payload : z . unknown ( ) , 
386+         } ) , 
387+       } ) ; 
388+ 
389+       const  [ queryPayloadsError ,  resultPayloads ]  =  await  queryPayloads ( {  run_id : "run_1234"  } ) ; 
390+ 
391+       expect ( queryPayloadsError ) . toBeNull ( ) ; 
392+       expect ( resultPayloads ) . toEqual ( 
393+         expect . arrayContaining ( [ expect . objectContaining ( {  run_id : "run_1234"  } ) ] ) 
394+       ) ; 
395+     } 
396+   ) ; 
347397} ) ; 
0 commit comments