@@ -43,7 +43,7 @@ test('Task version update [v2]', async ({ page, workflow }) => {
4343 version : '0.0.1' ,
4444 args_schema_parallel : {
4545 properties : {
46- p2 : { type : 'string' }
46+ p2 : { type : 'string' , title : 'p2' }
4747 } ,
4848 type : 'object'
4949 }
@@ -54,7 +54,19 @@ test('Task version update [v2]', async ({ page, workflow }) => {
5454 version : '0.0.2' ,
5555 args_schema_parallel : {
5656 properties : {
57- p2 : { type : 'string' }
57+ p2 : { type : 'string' , title : 'p2' }
58+ } ,
59+ type : 'object' ,
60+ required : [ 'p2' ]
61+ }
62+ } ) ;
63+ await createFakeTask ( page , {
64+ name : parallelTask ,
65+ type : 'parallel' ,
66+ version : '0.0.3' ,
67+ args_schema_parallel : {
68+ properties : {
69+ p2 : { type : 'string' , title : 'p2' }
5870 } ,
5971 type : 'object' ,
6072 required : [ 'p2' ]
@@ -144,7 +156,31 @@ test('Task version update [v2]', async ({ page, workflow }) => {
144156 await page . getByRole ( 'button' , { name : 'Check' } ) . click ( ) ;
145157 await page . getByText ( 'The arguments are valid' ) . waitFor ( ) ;
146158 await page . getByRole ( 'button' , { name : 'Update' } ) . click ( ) ;
159+ await expect (
160+ page . getByRole ( 'combobox' , { name : 'New versions of this task exist:' } ) . getByRole ( 'option' )
161+ ) . toHaveCount ( 2 ) ;
162+ await expect (
163+ page
164+ . getByRole ( 'combobox' , { name : 'New versions of this task exist:' } )
165+ . getByRole ( 'option' )
166+ . nth ( 1 )
167+ ) . toHaveText ( '0.0.3' ) ;
168+ } ) ;
169+
170+ await test . step ( 'Update parallel task to v3 (no fix needed)' , async ( ) => {
171+ await page . getByRole ( 'button' , { name : 'Arguments' , exact : true } ) . click ( ) ;
172+ await page . getByRole ( 'textbox' , { name : 'p2' } ) . fill ( 'test-value' ) ;
173+ await page . getByRole ( 'button' , { name : 'Save changes' } ) . click ( ) ;
174+ await page . getByRole ( 'button' , { name : 'Version' } ) . click ( ) ;
175+ await page
176+ . getByRole ( 'combobox' , { name : 'New versions of this task exist:' } )
177+ . selectOption ( '0.0.3' ) ;
178+ await page . getByText ( 'The arguments are valid' ) . waitFor ( ) ;
179+ await page . getByRole ( 'button' , { name : 'Update' } ) . click ( ) ;
147180 await page . getByText ( 'No new versions available' ) . waitFor ( ) ;
181+ // Verify that the arguments are preserved after the update
182+ await page . getByRole ( 'button' , { name : 'Arguments' , exact : true } ) . click ( ) ;
183+ await expect ( page . getByRole ( 'textbox' , { name : 'p2' } ) ) . toHaveValue ( 'test-value' ) ;
148184 await workflow . removeCurrentTask ( ) ;
149185 } ) ;
150186
0 commit comments