Skip to content

Commit 723d2d7

Browse files
dhruvmanila6543zeripath
authored and
Sysoev, Vladimir
committed
Fix: Actor is required to get user repositories (go-gitea#20443)
Co-authored-by: 6543 <[email protected]> Co-authored-by: Andrew Thornton <[email protected]>
1 parent ef8f1c7 commit 723d2d7

File tree

3 files changed

+25
-0
lines changed

3 files changed

+25
-0
lines changed

models/repo/repo_list.go

+4
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package repo
66

77
import (
88
"context"
9+
"errors"
910
"fmt"
1011
"strings"
1112

@@ -695,6 +696,9 @@ func GetUserRepositories(opts *SearchRepoOptions) (RepositoryList, int64, error)
695696
}
696697

697698
cond := builder.NewCond()
699+
if opts.Actor == nil {
700+
return nil, 0, errors.New("GetUserRepositories: Actor is needed but not given")
701+
}
698702
cond = cond.And(builder.Eq{"owner_id": opts.Actor.ID})
699703
if !opts.Private {
700704
cond = cond.And(builder.Eq{"is_private": false})

services/user/user.go

+1
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ func DeleteUser(ctx context.Context, u *user_model.User, purge bool) error {
7575
},
7676
Private: true,
7777
OwnerID: u.ID,
78+
Actor: u,
7879
})
7980
if err != nil {
8081
return fmt.Errorf("SearchRepositoryByName: %v", err)

services/user/user_test.go

+20
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,26 @@ func TestDeleteUser(t *testing.T) {
6060
assert.Error(t, DeleteUser(db.DefaultContext, org, false))
6161
}
6262

63+
func TestPurgeUser(t *testing.T) {
64+
test := func(userID int64) {
65+
assert.NoError(t, unittest.PrepareTestDatabase())
66+
user := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: userID}).(*user_model.User)
67+
68+
err := DeleteUser(db.DefaultContext, user, true)
69+
assert.NoError(t, err)
70+
71+
unittest.AssertNotExistsBean(t, &user_model.User{ID: userID})
72+
unittest.CheckConsistencyFor(t, &user_model.User{}, &repo_model.Repository{})
73+
}
74+
test(2)
75+
test(4)
76+
test(8)
77+
test(11)
78+
79+
org := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 3}).(*user_model.User)
80+
assert.Error(t, DeleteUser(db.DefaultContext, org, false))
81+
}
82+
6383
func TestCreateUser(t *testing.T) {
6484
user := &user_model.User{
6585
Name: "GiteaBot",

0 commit comments

Comments
 (0)