@@ -441,13 +441,34 @@ func TestCreateWithRichParameters(t *testing.T) {
441
441
require .NoError (t , err , "can't create first workspace" )
442
442
443
443
// Secondly, create a new workspace using parameters from the previous workspace.
444
- inv , root = clitest .New (t , "create" , "--copy-parameters" , "my-workspace" , "other-workspace" , "-y" )
444
+ const otherWorkspace = "other-workspace"
445
+
446
+ inv , root = clitest .New (t , "create" , "--copy-parameters" , "my-workspace" , otherWorkspace , "-y" )
445
447
clitest .SetupConfig (t , member , root )
446
448
pty = ptytest .New (t ).Attach (inv )
447
449
inv .Stdout = pty .Output ()
448
450
inv .Stderr = pty .Output ()
449
451
err = inv .Run ()
450
452
require .NoError (t , err , "can't create a workspace based on the source workspace" )
453
+
454
+ // Verify if the new workspace uses expected parameters.
455
+ ctx , cancel := context .WithTimeout (context .Background (), testutil .WaitShort )
456
+ defer cancel ()
457
+
458
+ workspaces , err := client .Workspaces (ctx , codersdk.WorkspaceFilter {
459
+ Name : otherWorkspace ,
460
+ })
461
+ require .NoError (t , err , "can't list available workspaces" )
462
+ require .Len (t , workspaces .Workspaces , 1 )
463
+
464
+ otherWorkspaceLatestBuild := workspaces .Workspaces [0 ].LatestBuild
465
+
466
+ buildParameters , err := client .WorkspaceBuildParameters (ctx , otherWorkspaceLatestBuild .ID )
467
+ require .NoError (t , err )
468
+ require .Len (t , buildParameters , 3 )
469
+ require .Contains (t , buildParameters , codersdk.WorkspaceBuildParameter {Name : firstParameterName , Value : firstParameterValue })
470
+ require .Contains (t , buildParameters , codersdk.WorkspaceBuildParameter {Name : secondParameterName , Value : secondParameterValue })
471
+ require .Contains (t , buildParameters , codersdk.WorkspaceBuildParameter {Name : immutableParameterName , Value : immutableParameterValue })
451
472
})
452
473
}
453
474
0 commit comments