| 1329 | } |
| 1330 | |
| 1331 | func WorkspaceAppStat(t testing.TB, db database.Store, orig database.WorkspaceAppStat) database.WorkspaceAppStat { |
| 1332 | // This is not going to be correct, but our query doesn't return the ID. |
| 1333 | id, err := cryptorand.Int63() |
| 1334 | require.NoError(t, err, "generate id") |
| 1335 | |
| 1336 | scheme := database.WorkspaceAppStat{ |
| 1337 | ID: takeFirst(orig.ID, id), |
| 1338 | UserID: takeFirst(orig.UserID, uuid.New()), |
| 1339 | WorkspaceID: takeFirst(orig.WorkspaceID, uuid.New()), |
| 1340 | AgentID: takeFirst(orig.AgentID, uuid.New()), |
| 1341 | AccessMethod: takeFirst(orig.AccessMethod, ""), |
| 1342 | SlugOrPort: takeFirst(orig.SlugOrPort, ""), |
| 1343 | SessionID: takeFirst(orig.SessionID, uuid.New()), |
| 1344 | SessionStartedAt: takeFirst(orig.SessionStartedAt, dbtime.Now().Add(-time.Minute)), |
| 1345 | SessionEndedAt: takeFirst(orig.SessionEndedAt, dbtime.Now()), |
| 1346 | Requests: takeFirst(orig.Requests, 1), |
| 1347 | } |
| 1348 | err = db.InsertWorkspaceAppStats(genCtx, database.InsertWorkspaceAppStatsParams{ |
| 1349 | UserID: []uuid.UUID{scheme.UserID}, |
| 1350 | WorkspaceID: []uuid.UUID{scheme.WorkspaceID}, |
| 1351 | AgentID: []uuid.UUID{scheme.AgentID}, |
| 1352 | AccessMethod: []string{scheme.AccessMethod}, |
| 1353 | SlugOrPort: []string{scheme.SlugOrPort}, |
| 1354 | SessionID: []uuid.UUID{scheme.SessionID}, |
| 1355 | SessionStartedAt: []time.Time{scheme.SessionStartedAt}, |
| 1356 | SessionEndedAt: []time.Time{scheme.SessionEndedAt}, |
| 1357 | Requests: []int32{scheme.Requests}, |
| 1358 | }) |
| 1359 | require.NoError(t, err, "insert workspace agent stat") |
| 1360 | return scheme |
| 1361 | } |
| 1362 | |
| 1363 | func WorkspaceAppStatus(t testing.TB, db database.Store, orig database.WorkspaceAppStatus) database.WorkspaceAppStatus { |
| 1364 | appStatus, err := db.InsertWorkspaceAppStatus(genCtx, database.InsertWorkspaceAppStatusParams{ |