Skip to content

Commit a261c45

Browse files
committed
Return 404 error
1 parent 781c125 commit a261c45

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

coderd/httpmw/userparam.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,10 @@ func ExtractUserParam(db database.Store, redirectToLoginOnMe bool) func(http.Han
8383
} else if userID, err := uuid.Parse(userQuery); err == nil {
8484
//nolint:gocritic // If the userQuery is a valid uuid
8585
user, err = db.GetUserByID(ctx, userID)
86+
if httpapi.Is404Error(err) {
87+
httpapi.ResourceNotFound(rw)
88+
return
89+
}
8690
if err != nil {
8791
httpapi.Write(ctx, rw, http.StatusBadRequest, codersdk.Response{
8892
Message: userErrorMessage,
@@ -95,6 +99,10 @@ func ExtractUserParam(db database.Store, redirectToLoginOnMe bool) func(http.Han
9599
user, err = db.GetUserByEmailOrUsername(ctx, database.GetUserByEmailOrUsernameParams{
96100
Username: userQuery,
97101
})
102+
if httpapi.Is404Error(err) {
103+
httpapi.ResourceNotFound(rw)
104+
return
105+
}
98106
if err != nil {
99107
httpapi.Write(ctx, rw, http.StatusBadRequest, codersdk.Response{
100108
Message: userErrorMessage,

coderd/users_test.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1204,7 +1204,11 @@ func TestGetUser(t *testing.T) {
12041204
uClient, _ := coderdtest.CreateAnotherUser(t, client, firstUser.OrganizationID)
12051205

12061206
_, err := uClient.User(ctx, firstUser.UserID.String())
1207-
require.NoError(t, err)
1207+
require.Error(t, err)
1208+
var sdkError *codersdk.Error
1209+
require.ErrorAs(t, err, &sdkError, "is codersdk error")
1210+
require.Equal(t, sdkError.StatusCode(), 404, "expected 404")
1211+
12081212
})
12091213
}
12101214

0 commit comments

Comments
 (0)