feat: Users API, ownership transfer and removal of the legacy role string
This commit is contained in:
1 parent
094df63a7f
commit
80f7037d3a
124 files changed
+4644
-824
No files matched your search
@@ -67,7 +67,7 @@ func TestGetCurrentUserHttp(t *testing.T) {
|
||||
userRepo.users[7] = user.User{
|
||||
ID: 7,
|
||||
Username: "alice",
|
||||
Role: user.RoleOwner,
|
||||
RoleID: ownerRoleID,
|
||||
Email: "alice@example.com",
|
||||
IsVerified: true,
|
||||
TokenVersion: 0,
|
||||
@@ -98,7 +98,7 @@ func TestGetCurrentUserHttp(t *testing.T) {
|
||||
userRepo.users[8] = user.User{
|
||||
ID: 8,
|
||||
Username: "bob",
|
||||
Role: user.RoleOwner,
|
||||
RoleID: ownerRoleID,
|
||||
Email: "bob@example.com",
|
||||
IsVerified: false,
|
||||
TokenVersion: 0,
|
||||
@@ -126,7 +126,7 @@ func TestGetCurrentUserHttp(t *testing.T) {
|
||||
t.Run("No jwt cookie at all is refused", func(t *testing.T) {
|
||||
token := authtoken.New([]byte("test-secret"))
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", Role: user.RoleAdmin, IsVerified: true, TokenVersion: 0}
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", RoleID: adminRoleID, IsVerified: true, TokenVersion: 0}
|
||||
router := newGetCurrentUserRouter(userRepo, &stubHasher{}, token)
|
||||
|
||||
rec := sendGetCurrentUserRequest(router, http.MethodGet, "/v1/auth/me", nil)
|
||||
@@ -139,7 +139,7 @@ func TestGetCurrentUserHttp(t *testing.T) {
|
||||
t.Run("A jwt whose token_version no longer matches the stored user is refused", func(t *testing.T) {
|
||||
token := authtoken.New([]byte("test-secret"))
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", Role: user.RoleAdmin, IsVerified: true, TokenVersion: 1}
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", RoleID: adminRoleID, IsVerified: true, TokenVersion: 1}
|
||||
router := newGetCurrentUserRouter(userRepo, &stubHasher{}, token)
|
||||
cookie := mintGetCurrentUserCookie(t, token, 7, 0)
|
||||
|
||||
@@ -156,7 +156,7 @@ func TestGetCurrentUserHttp(t *testing.T) {
|
||||
t.Run("A jwt minted for a since-deleted account is refused", func(t *testing.T) {
|
||||
token := authtoken.New([]byte("test-secret"))
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", Role: user.RoleAdmin, IsVerified: false, TokenVersion: 0}
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", RoleID: adminRoleID, IsVerified: false, TokenVersion: 0}
|
||||
router := newGetCurrentUserRouter(userRepo, &stubHasher{}, token)
|
||||
cookie := mintGetCurrentUserCookie(t, token, 7, 0)
|
||||
|
||||
@@ -177,7 +177,7 @@ func TestGetCurrentUserHttp(t *testing.T) {
|
||||
t.Run("The route is never rate-limited, unlike login and password reset", func(t *testing.T) {
|
||||
token := authtoken.New([]byte("test-secret"))
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", Role: user.RoleAdmin, IsVerified: true, TokenVersion: 0}
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", RoleID: adminRoleID, IsVerified: true, TokenVersion: 0}
|
||||
router := newGetCurrentUserRouter(userRepo, &stubHasher{}, token)
|
||||
cookie := mintGetCurrentUserCookie(t, token, 7, 0)
|
||||
|
||||
|
||||
Reference in new issue
Block a user