| 2046 | } |
| 2047 | |
| 2048 | func Task(t testing.TB, db database.Store, orig database.TaskTable) database.Task { |
| 2049 | t.Helper() |
| 2050 | |
| 2051 | parameters := orig.TemplateParameters |
| 2052 | if parameters == nil { |
| 2053 | parameters = json.RawMessage([]byte("{}")) |
| 2054 | } |
| 2055 | |
| 2056 | task, err := db.InsertTask(genCtx, database.InsertTaskParams{ |
| 2057 | ID: takeFirst(orig.ID, uuid.New()), |
| 2058 | OrganizationID: orig.OrganizationID, |
| 2059 | OwnerID: orig.OwnerID, |
| 2060 | Name: takeFirst(orig.Name, testutil.GetRandomNameHyphenated(t)), |
| 2061 | DisplayName: takeFirst(orig.DisplayName, testutil.GetRandomNameHyphenated(t)), |
| 2062 | WorkspaceID: orig.WorkspaceID, |
| 2063 | TemplateVersionID: orig.TemplateVersionID, |
| 2064 | TemplateParameters: parameters, |
| 2065 | Prompt: orig.Prompt, |
| 2066 | CreatedAt: takeFirst(orig.CreatedAt, dbtime.Now()), |
| 2067 | }) |
| 2068 | require.NoError(t, err, "failed to insert task") |
| 2069 | |
| 2070 | // Return the Task from the view instead of the TaskTable |
| 2071 | fetched, err := db.GetTaskByID(genCtx, task.ID) |
| 2072 | require.NoError(t, err, "failed to fetch task") |
| 2073 | require.Equal(t, task.ID, fetched.ID) |
| 2074 | |
| 2075 | return fetched |
| 2076 | } |
| 2077 | |
| 2078 | func TaskWorkspaceApp(t testing.TB, db database.Store, orig database.TaskWorkspaceApp) database.TaskWorkspaceApp { |
| 2079 | t.Helper() |