mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	Fill the specified ref in webhook test payload (#20961)
The webhook payload should use the right ref when it‘s specified in the testing request. The compare URL should not be empty, a URL like `compare/A...A` seems useless in most cases but is helpful when testing.
This commit is contained in:
		| @@ -13,6 +13,7 @@ import ( | ||||
| 	"code.gitea.io/gitea/modules/context" | ||||
| 	"code.gitea.io/gitea/modules/convert" | ||||
| 	"code.gitea.io/gitea/modules/git" | ||||
| 	"code.gitea.io/gitea/modules/setting" | ||||
| 	api "code.gitea.io/gitea/modules/structs" | ||||
| 	"code.gitea.io/gitea/modules/web" | ||||
| 	"code.gitea.io/gitea/routers/api/v1/utils" | ||||
| @@ -140,7 +141,7 @@ func TestHook(ctx *context.APIContext) { | ||||
| 	//   required: true | ||||
| 	// - name: ref | ||||
| 	//   in: query | ||||
| 	//   description: "The name of the commit/branch/tag. Default the repository’s default branch (usually master)" | ||||
| 	//   description: "The name of the commit/branch/tag, indicates which commit will be loaded to the webhook payload." | ||||
| 	//   type: string | ||||
| 	//   required: false | ||||
| 	// responses: | ||||
| @@ -153,6 +154,11 @@ func TestHook(ctx *context.APIContext) { | ||||
| 		return | ||||
| 	} | ||||
|  | ||||
| 	ref := git.BranchPrefix + ctx.Repo.Repository.DefaultBranch | ||||
| 	if r := ctx.FormTrim("ref"); r != "" { | ||||
| 		ref = r | ||||
| 	} | ||||
|  | ||||
| 	hookID := ctx.ParamsInt64(":id") | ||||
| 	hook, err := utils.GetRepoHook(ctx, ctx.Repo.Repository.ID, hookID) | ||||
| 	if err != nil { | ||||
| @@ -161,10 +167,12 @@ func TestHook(ctx *context.APIContext) { | ||||
|  | ||||
| 	commit := convert.ToPayloadCommit(ctx.Repo.Repository, ctx.Repo.Commit) | ||||
|  | ||||
| 	commitID := ctx.Repo.Commit.ID.String() | ||||
| 	if err := webhook_service.PrepareWebhook(hook, ctx.Repo.Repository, webhook.HookEventPush, &api.PushPayload{ | ||||
| 		Ref:        git.BranchPrefix + ctx.Repo.Repository.DefaultBranch, | ||||
| 		Before:     ctx.Repo.Commit.ID.String(), | ||||
| 		After:      ctx.Repo.Commit.ID.String(), | ||||
| 		Ref:        ref, | ||||
| 		Before:     commitID, | ||||
| 		After:      commitID, | ||||
| 		CompareURL: setting.AppURL + ctx.Repo.Repository.ComposeCompareURL(commitID, commitID), | ||||
| 		Commits:    []*api.PayloadCommit{commit}, | ||||
| 		HeadCommit: commit, | ||||
| 		Repo:       convert.ToRepo(ctx.Repo.Repository, perm.AccessModeNone), | ||||
|   | ||||
		Reference in New Issue
	
	Block a user