@@ -277,22 +277,24 @@ func TestTasks(t *testing.T) {
277
277
user := coderdtest .CreateFirstUser (t ,client )
278
278
template := createAITemplate (t ,client ,user )
279
279
280
- ws := coderdtest .CreateWorkspace (t ,client ,template .ID ,func (req * codersdk.CreateWorkspaceRequest ) {
281
- req .RichParameterValues = []codersdk.WorkspaceBuildParameter {
282
- {Name :codersdk .AITaskPromptParameterName ,Value :"delete-me" },
283
- }
284
- })
285
- coderdtest .AwaitWorkspaceBuildJobCompleted (t ,client ,ws .LatestBuild .ID )
286
-
287
280
ctx := testutil .Context (t ,testutil .WaitLong )
288
281
289
282
exp := codersdk .NewExperimentalClient (client )
290
- err := exp .DeleteTask (ctx ,"me" ,ws .ID )
283
+ task ,err := exp .CreateTask (ctx ,"me" , codersdk.CreateTaskRequest {
284
+ TemplateVersionID :template .ActiveVersionID ,
285
+ Prompt :"delete me" ,
286
+ })
287
+ require .NoError (t ,err )
288
+ ws ,err := client .Workspace (ctx ,task .ID )
289
+ require .NoError (t ,err )
290
+ coderdtest .AwaitWorkspaceBuildJobCompleted (t ,client ,ws .LatestBuild .ID )
291
+
292
+ err = exp .DeleteTask (ctx ,"me" ,task .ID )
291
293
require .NoError (t ,err ,"delete task request should be accepted" )
292
294
293
295
// Poll until the workspace is deleted.
294
296
for {
295
- dws ,derr := client .DeletedWorkspace (ctx ,ws .ID )
297
+ dws ,derr := client .DeletedWorkspace (ctx ,task .ID )
296
298
if derr == nil && dws .LatestBuild .Status == codersdk .WorkspaceStatusDeleted {
297
299
break
298
300
}
@@ -354,21 +356,25 @@ func TestTasks(t *testing.T) {
354
356
355
357
// Owner's AI-capable template and workspace (task).
356
358
template := createAITemplate (t ,client ,owner )
357
- ws := coderdtest .CreateWorkspace (t ,client ,template .ID ,func (req * codersdk.CreateWorkspaceRequest ) {
358
- req .RichParameterValues = []codersdk.WorkspaceBuildParameter {
359
- {Name :codersdk .AITaskPromptParameterName ,Value :"secure" },
360
- }
361
- })
362
- coderdtest .AwaitWorkspaceBuildJobCompleted (t ,client ,ws .LatestBuild .ID )
363
359
364
360
ctx := testutil .Context (t ,testutil .WaitShort )
365
361
362
+ exp := codersdk .NewExperimentalClient (client )
363
+ task ,err := exp .CreateTask (ctx ,"me" , codersdk.CreateTaskRequest {
364
+ TemplateVersionID :template .ActiveVersionID ,
365
+ Prompt :"delete me not" ,
366
+ })
367
+ require .NoError (t ,err )
368
+ ws ,err := client .Workspace (ctx ,task .ID )
369
+ require .NoError (t ,err )
370
+ coderdtest .AwaitWorkspaceBuildJobCompleted (t ,client ,ws .LatestBuild .ID )
371
+
366
372
// Another regular org member without elevated permissions.
367
373
otherClient ,_ := coderdtest .CreateAnotherUser (t ,client ,owner .OrganizationID )
368
374
expOther := codersdk .NewExperimentalClient (otherClient )
369
375
370
376
// Attempt to delete the owner's task as a non-owner without permissions.
371
- err : =expOther .DeleteTask (ctx ,"me" ,ws .ID )
377
+ err = expOther .DeleteTask (ctx ,"me" ,task .ID )
372
378
373
379
var authErr * codersdk.Error
374
380
require .Error (t ,err ,"expected an authorization error when deleting another user's task" )