0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-04-04 07:55:31 +02:00

add doer parameter to MoveGroupItem describing the user trying to move a group

This commit is contained in:
☙◦ The Tablet ❀ GamerGirlandCo ◦❧ 2025-08-13 21:56:31 -04:00
parent 314be8ad26
commit fd394b6d2c
No known key found for this signature in database
GPG Key ID: 924A5F6AF051E87C
4 changed files with 13 additions and 6 deletions

View File

@ -143,7 +143,7 @@ func MoveGroup(ctx *context.APIContext) {
}
err = group_service.MoveGroupItem(ctx, group_service.MoveGroupOptions{
form.NewParent, id, true, npos,
}, 3)
}, ctx.Doer)
if group_model.IsErrGroupNotExist(err) {
ctx.APIErrorNotFound()
return

View File

@ -1307,7 +1307,7 @@ func MoveRepoToGroup(ctx *context.APIContext) {
IsGroup: false, NewPos: npos,
ItemID: ctx.Repo.Repository.ID,
NewParent: form.NewParent,
}, ctx.Doer.ID)
}, ctx.Doer)
if err != nil {
ctx.APIErrorInternal(err)
return

View File

@ -72,7 +72,7 @@ type MoveGroupOptions struct {
NewPos int
}
func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doerID int64) (err error) {
func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doer *user_model.User) (err error) {
var committer db.Committer
ctx, committer, err = db.TxContext(ctx)
if err != nil {
@ -84,7 +84,7 @@ func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doerID int64) (er
if err != nil {
return err
}
canAccessNewParent, err := parentGroup.CanAccess(ctx, doerID)
canAccessNewParent, err := parentGroup.CanAccess(ctx, doer)
if err != nil {
return err
}

View File

@ -1,6 +1,7 @@
package group
import (
user_model "code.gitea.io/gitea/models/user"
"testing"
"code.gitea.io/gitea/models/db"
@ -31,6 +32,9 @@ func TestNewGroup(t *testing.T) {
func TestMoveGroup(t *testing.T) {
assert.NoError(t, unittest.PrepareTestDatabase())
doer := unittest.AssertExistsAndLoadBean(t, &user_model.User{
ID: 3,
})
testfn := func(gid int64) {
cond := &group_model.FindGroupsOptions{
ParentGroupID: 123,
@ -38,7 +42,7 @@ func TestMoveGroup(t *testing.T) {
}
origCount := unittest.GetCount(t, new(group_model.Group), cond.ToConds())
assert.NoError(t, MoveGroupItem(t.Context(), MoveGroupOptions{123, gid, true, -1}, 3))
assert.NoError(t, MoveGroupItem(t.Context(), MoveGroupOptions{123, gid, true, -1}, doer))
unittest.AssertCountByCond(t, "repo_group", cond.ToConds(), origCount+1)
}
testfn(124)
@ -48,11 +52,14 @@ func TestMoveGroup(t *testing.T) {
func TestMoveRepo(t *testing.T) {
assert.NoError(t, unittest.PrepareTestDatabase())
doer := unittest.AssertExistsAndLoadBean(t, &user_model.User{
ID: 3,
})
cond := repo_model.SearchRepositoryCondition(repo_model.SearchRepoOptions{
GroupID: 123,
})
origCount := unittest.GetCount(t, new(repo_model.Repository), cond)
assert.NoError(t, MoveGroupItem(db.DefaultContext, MoveGroupOptions{123, 32, false, -1}, 3))
assert.NoError(t, MoveGroupItem(db.DefaultContext, MoveGroupOptions{123, 32, false, -1}, doer))
unittest.AssertCountByCond(t, "repository", cond, origCount+1)
}