(t *testing.T)
| 1467 | } |
| 1468 | |
| 1469 | func TestTasksCreate(t *testing.T) { |
| 1470 | t.Parallel() |
| 1471 | |
| 1472 | t.Run("OK", func(t *testing.T) { |
| 1473 | t.Parallel() |
| 1474 | |
| 1475 | var ( |
| 1476 | ctx = testutil.Context(t, testutil.WaitShort) |
| 1477 | |
| 1478 | taskPrompt = "Some task prompt" |
| 1479 | ) |
| 1480 | |
| 1481 | client := coderdtest.New(t, &coderdtest.Options{IncludeProvisionerDaemon: true}) |
| 1482 | user := coderdtest.CreateFirstUser(t, client) |
| 1483 | |
| 1484 | version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, &echo.Responses{ |
| 1485 | Parse: echo.ParseComplete, |
| 1486 | ProvisionApply: echo.ApplyComplete, |
| 1487 | ProvisionGraph: []*proto.Response{ |
| 1488 | {Type: &proto.Response_Graph{Graph: &proto.GraphComplete{ |
| 1489 | HasAiTasks: true, |
| 1490 | }}}, |
| 1491 | }, |
| 1492 | }) |
| 1493 | coderdtest.AwaitTemplateVersionJobCompleted(t, client, version.ID) |
| 1494 | template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID) |
| 1495 | |
| 1496 | task, err := client.CreateTask(ctx, "me", codersdk.CreateTaskRequest{ |
| 1497 | TemplateVersionID: template.ActiveVersionID, |
| 1498 | Input: taskPrompt, |
| 1499 | }) |
| 1500 | require.NoError(t, err) |
| 1501 | require.True(t, task.WorkspaceID.Valid) |
| 1502 | |
| 1503 | ws, err := client.Workspace(ctx, task.WorkspaceID.UUID) |
| 1504 | require.NoError(t, err) |
| 1505 | coderdtest.AwaitWorkspaceBuildJobCompleted(t, client, ws.LatestBuild.ID) |
| 1506 | |
| 1507 | assert.NotEmpty(t, task.Name) |
| 1508 | assert.Equal(t, template.ID, task.TemplateID) |
| 1509 | |
| 1510 | parameters, err := client.WorkspaceBuildParameters(ctx, ws.LatestBuild.ID) |
| 1511 | require.NoError(t, err) |
| 1512 | require.Len(t, parameters, 0) |
| 1513 | }) |
| 1514 | |
| 1515 | t.Run("CustomNames", func(t *testing.T) { |
| 1516 | t.Parallel() |
| 1517 | |
| 1518 | tests := []struct { |
| 1519 | name string |
| 1520 | taskName string |
| 1521 | taskDisplayName string |
| 1522 | expectFallbackName bool |
| 1523 | expectFallbackDisplayName bool |
| 1524 | expectError string |
| 1525 | }{ |
| 1526 | { |
nothing calls this directly
no test coverage detected