From 357526dada8f6f76cbee84daadf44b657ebf2a60 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Wed, 17 Jan 2024 06:41:25 +0000 Subject: [PATCH 1/2] Add MergedAt field to PullRequestLinks Fixes #3052 --- github/issues.go | 9 +++++---- github/issues_test.go | 4 +++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/github/issues.go b/github/issues.go index 1c07fef827b..750e7cefd98 100644 --- a/github/issues.go +++ b/github/issues.go @@ -122,10 +122,11 @@ type IssueListOptions struct { // PullRequestLinks object is added to the Issue object when it's an issue included // in the IssueCommentEvent webhook payload, if the webhook is fired by a comment on a PR. type PullRequestLinks struct { - URL *string `json:"url,omitempty"` - HTMLURL *string `json:"html_url,omitempty"` - DiffURL *string `json:"diff_url,omitempty"` - PatchURL *string `json:"patch_url,omitempty"` + URL *string `json:"url,omitempty"` + HTMLURL *string `json:"html_url,omitempty"` + DiffURL *string `json:"diff_url,omitempty"` + PatchURL *string `json:"patch_url,omitempty"` + MergedAt *Timestamp `json:"merged_at,omitmepty"` } // List the issues for the authenticated user. If all is true, list issues diff --git a/github/issues_test.go b/github/issues_test.go index aa767d6508a..d64ef88d72f 100644 --- a/github/issues_test.go +++ b/github/issues_test.go @@ -499,13 +499,15 @@ func TestPullRequestLinks_Marshal(t *testing.T) { HTMLURL: String("hurl"), DiffURL: String("durl"), PatchURL: String("purl"), + MergedAt: &Timestamp{referenceTime}, } want := `{ "url": "url", "html_url": "hurl", "diff_url": "durl", - "patch_url": "purl" + "patch_url": "purl", + "merged_at": ` + referenceTimeStr + ` }` testJSONMarshal(t, u, want) From 9f177b95366fb05be3bc0a64e90ed37e91add89a Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Wed, 17 Jan 2024 23:58:11 +0000 Subject: [PATCH 2/2] fixup! Add MergedAt field to PullRequestLinks --- github/github-accessors.go | 8 ++++++++ github/github-accessors_test.go | 10 ++++++++++ github/issues.go | 2 +- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/github/github-accessors.go b/github/github-accessors.go index 256bfacfb50..6663fc1ae7d 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -16262,6 +16262,14 @@ func (p *PullRequestLinks) GetHTMLURL() string { return *p.HTMLURL } +// GetMergedAt returns the MergedAt field if it's non-nil, zero value otherwise. +func (p *PullRequestLinks) GetMergedAt() Timestamp { + if p == nil || p.MergedAt == nil { + return Timestamp{} + } + return *p.MergedAt +} + // GetPatchURL returns the PatchURL field if it's non-nil, zero value otherwise. func (p *PullRequestLinks) GetPatchURL() string { if p == nil || p.PatchURL == nil { diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index 461ce8ed7eb..86c9140d55b 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -18864,6 +18864,16 @@ func TestPullRequestLinks_GetHTMLURL(tt *testing.T) { p.GetHTMLURL() } +func TestPullRequestLinks_GetMergedAt(tt *testing.T) { + var zeroValue Timestamp + p := &PullRequestLinks{MergedAt: &zeroValue} + p.GetMergedAt() + p = &PullRequestLinks{} + p.GetMergedAt() + p = nil + p.GetMergedAt() +} + func TestPullRequestLinks_GetPatchURL(tt *testing.T) { var zeroValue string p := &PullRequestLinks{PatchURL: &zeroValue} diff --git a/github/issues.go b/github/issues.go index 750e7cefd98..a2652b34972 100644 --- a/github/issues.go +++ b/github/issues.go @@ -126,7 +126,7 @@ type PullRequestLinks struct { HTMLURL *string `json:"html_url,omitempty"` DiffURL *string `json:"diff_url,omitempty"` PatchURL *string `json:"patch_url,omitempty"` - MergedAt *Timestamp `json:"merged_at,omitmepty"` + MergedAt *Timestamp `json:"merged_at,omitempty"` } // List the issues for the authenticated user. If all is true, list issues