diff --git a/models/repo.go b/models/repo.go index d637b880838..e82fd5dedf0 100644 --- a/models/repo.go +++ b/models/repo.go @@ -153,7 +153,7 @@ func getRepoAssignees(ctx context.Context, repo *repo_model.Repository) (_ []*us userIDs := make([]int64, 0, 10) if err = e.Table("access"). Where("repo_id = ? AND mode >= ?", repo.ID, perm.AccessModeWrite). - Select("id"). + Select("user_id"). Find(&userIDs); err != nil { return nil, err } diff --git a/models/repo_test.go b/models/repo_test.go index c0790e532d7..ea250be9763 100644 --- a/models/repo_test.go +++ b/models/repo_test.go @@ -167,3 +167,21 @@ func TestLinkedRepository(t *testing.T) { }) } } + +func TestRepoAssignees(t *testing.T) { + assert.NoError(t, unittest.PrepareTestDatabase()) + + repo2 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 2}).(*repo_model.Repository) + users, err := GetRepoAssignees(repo2) + assert.NoError(t, err) + assert.Len(t, users, 1) + assert.Equal(t, users[0].ID, int64(2)) + + repo21 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 21}).(*repo_model.Repository) + users, err = GetRepoAssignees(repo21) + assert.NoError(t, err) + assert.Len(t, users, 3) + assert.Equal(t, users[0].ID, int64(15)) + assert.Equal(t, users[1].ID, int64(18)) + assert.Equal(t, users[2].ID, int64(16)) +}