mustWorkspaceAppByWorkspaceAndBuildAndAppID finds a workspace app by workspace ID, build number, and app ID. It returns the workspace app if found, otherwise fails the test.
(ctx context.Context, t testing.TB, db database.Store, workspaceID uuid.UUID, buildNumber int32, appID uuid.UUID)
| 914 | // workspace ID, build number, and app ID. It returns the workspace app |
| 915 | // if found, otherwise fails the test. |
| 916 | func mustWorkspaceAppByWorkspaceAndBuildAndAppID(ctx context.Context, t testing.TB, db database.Store, workspaceID uuid.UUID, buildNumber int32, appID uuid.UUID) database.WorkspaceApp { |
| 917 | t.Helper() |
| 918 | |
| 919 | agents, err := db.GetWorkspaceAgentsByWorkspaceAndBuildNumber(ctx, database.GetWorkspaceAgentsByWorkspaceAndBuildNumberParams{ |
| 920 | WorkspaceID: workspaceID, |
| 921 | BuildNumber: buildNumber, |
| 922 | }) |
| 923 | require.NoError(t, err, "get workspace agents") |
| 924 | require.NotEmpty(t, agents, "no agents found for workspace") |
| 925 | |
| 926 | for _, agent := range agents { |
| 927 | apps, err := db.GetWorkspaceAppsByAgentID(ctx, agent.ID) |
| 928 | require.NoError(t, err, "get workspace apps") |
| 929 | for _, app := range apps { |
| 930 | if app.ID == appID { |
| 931 | return app |
| 932 | } |
| 933 | } |
| 934 | } |
| 935 | |
| 936 | require.FailNow(t, "could not find workspace app", "workspaceID=%s buildNumber=%d appID=%s", workspaceID, buildNumber, appID) |
| 937 | return database.WorkspaceApp{} // Unreachable. |
| 938 | } |
no test coverage detected