diff --git a/internal/forge/github/github.go b/internal/forge/github/github.go index 46f203a..e7f6f97 100644 --- a/internal/forge/github/github.go +++ b/internal/forge/github/github.go @@ -526,9 +526,7 @@ func gitHubPRToReleasePullRequest(pr *github.PullRequest) *releasepr.ReleasePull } return &releasepr.ReleasePullRequest{ - ID: pr.GetNumber(), - Title: pr.GetTitle(), - Description: pr.GetBody(), + PullRequest: *gitHubPRToPullRequest(pr), Labels: labels, Head: pr.GetHead().GetRef(), diff --git a/internal/releasepr/releasepr.go b/internal/releasepr/releasepr.go index c19451e..b615ad4 100644 --- a/internal/releasepr/releasepr.go +++ b/internal/releasepr/releasepr.go @@ -28,14 +28,9 @@ func init() { } } -// ReleasePullRequest -// -// TODO: Reuse [git.PullRequest] type ReleasePullRequest struct { - ID int - Title string - Description string - Labels []Label + git.PullRequest + Labels []Label Head string ReleaseCommit *git.Commit diff --git a/internal/releasepr/releasepr_test.go b/internal/releasepr/releasepr_test.go index 64295de..09beaae 100644 --- a/internal/releasepr/releasepr_test.go +++ b/internal/releasepr/releasepr_test.go @@ -6,6 +6,7 @@ import ( "github.com/stretchr/testify/assert" + "github.com/apricote/releaser-pleaser/internal/git" "github.com/apricote/releaser-pleaser/internal/versioning" ) @@ -36,7 +37,9 @@ func TestReleasePullRequest_GetOverrides(t *testing.T) { { name: "prefix in description", pr: ReleasePullRequest{ - Description: "```rp-prefix\n## Foo\n\n- Cool thing\n```", + PullRequest: git.PullRequest{ + Description: "```rp-prefix\n## Foo\n\n- Cool thing\n```", + }, }, want: ReleaseOverrides{Prefix: "## Foo\n\n- Cool thing"}, wantErr: assert.NoError, @@ -44,7 +47,9 @@ func TestReleasePullRequest_GetOverrides(t *testing.T) { { name: "suffix in description", pr: ReleasePullRequest{ - Description: "```rp-suffix\n## Compatibility\n\nNo compatibility guarantees.\n```", + PullRequest: git.PullRequest{ + Description: "```rp-suffix\n## Compatibility\n\nNo compatibility guarantees.\n```", + }, }, want: ReleaseOverrides{Suffix: "## Compatibility\n\nNo compatibility guarantees."}, wantErr: assert.NoError, @@ -105,7 +110,9 @@ Suffix Things for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { pr := &ReleasePullRequest{ - Description: tt.description, + PullRequest: git.PullRequest{ + Description: tt.description, + }, } got, err := pr.ChangelogText() if !tt.wantErr(t, err, fmt.Sprintf("ChangelogText()")) { @@ -129,7 +136,11 @@ func TestReleasePullRequest_SetTitle(t *testing.T) { }{ { name: "simple update", - pr: &ReleasePullRequest{Title: "foo: bar"}, + pr: &ReleasePullRequest{ + PullRequest: git.PullRequest{ + Title: "foo: bar", + }, + }, args: args{ branch: "main", version: "v1.0.0",