(t *testing.T)
| 917 | } |
| 918 | |
| 919 | func TestWorkspaceAgentClientCoordinate_BadVersion(t *testing.T) { |
| 920 | t.Parallel() |
| 921 | client, db := coderdtest.NewWithDatabase(t, nil) |
| 922 | user := coderdtest.CreateFirstUser(t, client) |
| 923 | |
| 924 | r := dbfake.WorkspaceBuild(t, db, database.WorkspaceTable{ |
| 925 | OrganizationID: user.OrganizationID, |
| 926 | OwnerID: user.UserID, |
| 927 | }).WithAgent().Do() |
| 928 | |
| 929 | ctx := testutil.Context(t, testutil.WaitShort) |
| 930 | agentToken, err := uuid.Parse(r.AgentToken) |
| 931 | require.NoError(t, err) |
| 932 | ao, err := db.GetAuthenticatedWorkspaceAgentAndBuildByAuthToken(dbauthz.AsSystemRestricted(ctx), agentToken) |
| 933 | require.NoError(t, err) |
| 934 | |
| 935 | //nolint: bodyclose // closed by ReadBodyAsError |
| 936 | resp, err := client.Request(ctx, http.MethodGet, |
| 937 | fmt.Sprintf("api/v2/workspaceagents/%s/coordinate", ao.WorkspaceAgent.ID), |
| 938 | nil, |
| 939 | codersdk.WithQueryParam("version", "99.99")) |
| 940 | require.NoError(t, err) |
| 941 | require.Equal(t, http.StatusBadRequest, resp.StatusCode) |
| 942 | err = codersdk.ReadBodyAsError(resp) |
| 943 | var sdkErr *codersdk.Error |
| 944 | require.ErrorAs(t, err, &sdkErr) |
| 945 | require.Equal(t, "Unknown or unsupported API version", sdkErr.Message) |
| 946 | require.Len(t, sdkErr.Validations, 1) |
| 947 | require.Equal(t, "version", sdkErr.Validations[0].Field) |
| 948 | } |
| 949 | |
| 950 | type resumeTokenRecordingProvider struct { |
| 951 | tailnet.ResumeTokenProvider |
nothing calls this directly
no test coverage detected