From e7e7149cd202a9ef5f05fd983a15984bab2577e4 Mon Sep 17 00:00:00 2001 From: Evan Lee Date: Wed, 22 Feb 2023 13:43:01 -0700 Subject: [PATCH] Add Permission, OldPermission to AuditEntry type (#2670) Fixes: #2669. --- github/github-accessors.go | 16 ++++++++++++++++ github/github-accessors_test.go | 20 ++++++++++++++++++++ github/orgs_audit_log.go | 2 ++ github/orgs_audit_log_test.go | 8 ++++++++ 4 files changed, 46 insertions(+) diff --git a/github/github-accessors.go b/github/github-accessors.go index 7036a9a6afc..59a59a4edb3 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -1222,6 +1222,14 @@ func (a *AuditEntry) GetName() string { return *a.Name } +// GetOldPermission returns the OldPermission field if it's non-nil, zero value otherwise. +func (a *AuditEntry) GetOldPermission() string { + if a == nil || a.OldPermission == nil { + return "" + } + return *a.OldPermission +} + // GetOldUser returns the OldUser field if it's non-nil, zero value otherwise. func (a *AuditEntry) GetOldUser() string { if a == nil || a.OldUser == nil { @@ -1246,6 +1254,14 @@ func (a *AuditEntry) GetOrg() string { return *a.Org } +// GetPermission returns the Permission field if it's non-nil, zero value otherwise. +func (a *AuditEntry) GetPermission() string { + if a == nil || a.Permission == nil { + return "" + } + return *a.Permission +} + // GetPreviousVisibility returns the PreviousVisibility field if it's non-nil, zero value otherwise. func (a *AuditEntry) GetPreviousVisibility() string { if a == nil || a.PreviousVisibility == nil { diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index 6590ff99efa..7239698a308 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -1447,6 +1447,16 @@ func TestAuditEntry_GetName(tt *testing.T) { a.GetName() } +func TestAuditEntry_GetOldPermission(tt *testing.T) { + var zeroValue string + a := &AuditEntry{OldPermission: &zeroValue} + a.GetOldPermission() + a = &AuditEntry{} + a.GetOldPermission() + a = nil + a.GetOldPermission() +} + func TestAuditEntry_GetOldUser(tt *testing.T) { var zeroValue string a := &AuditEntry{OldUser: &zeroValue} @@ -1477,6 +1487,16 @@ func TestAuditEntry_GetOrg(tt *testing.T) { a.GetOrg() } +func TestAuditEntry_GetPermission(tt *testing.T) { + var zeroValue string + a := &AuditEntry{Permission: &zeroValue} + a.GetPermission() + a = &AuditEntry{} + a.GetPermission() + a = nil + a.GetPermission() +} + func TestAuditEntry_GetPreviousVisibility(tt *testing.T) { var zeroValue string a := &AuditEntry{PreviousVisibility: &zeroValue} diff --git a/github/orgs_audit_log.go b/github/orgs_audit_log.go index be5fd24d6ed..700c233c803 100644 --- a/github/orgs_audit_log.go +++ b/github/orgs_audit_log.go @@ -63,8 +63,10 @@ type AuditEntry struct { Message *string `json:"message,omitempty"` Name *string `json:"name,omitempty"` OldUser *string `json:"old_user,omitempty"` + OldPermission *string `json:"old_permission,omitempty"` // The permission level for membership changes, for example `admin` or `read`. OpenSSHPublicKey *string `json:"openssh_public_key,omitempty"` Org *string `json:"org,omitempty"` + Permission *string `json:"permission,omitempty"` // The permission level for membership changes, for example `admin` or `read`. PreviousVisibility *string `json:"previous_visibility,omitempty"` ReadOnly *string `json:"read_only,omitempty"` Repo *string `json:"repo,omitempty"` diff --git a/github/orgs_audit_log_test.go b/github/orgs_audit_log_test.go index 1f060072452..be6361560f9 100644 --- a/github/orgs_audit_log_test.go +++ b/github/orgs_audit_log_test.go @@ -34,6 +34,8 @@ func TestOrganizationService_GetAuditLog(t *testing.T) { "created_at": 1615077308538, "head_sha": "5acdeadbeef64d1a62388e901e5cdc9358644b37", "conclusion": "success", + "old_permission": "read", + "permission": "admin", "actor": "testactor", "completed_at": "2021-03-07T00:35:08.000Z", "@timestamp": 1615077308538, @@ -80,7 +82,9 @@ func TestOrganizationService_GetAuditLog(t *testing.T) { HeadBranch: String("master"), HeadSHA: String("5acdeadbeef64d1a62388e901e5cdc9358644b37"), Name: String("Code scanning - action"), + OldPermission: String("read"), Org: String("o"), + Permission: String("admin"), Repo: String("o/blue-crayon-1"), StartedAt: &Timestamp{startedAt}, WorkflowID: Int64(123456), @@ -199,9 +203,11 @@ func TestAuditEntry_Marshal(t *testing.T) { LimitedAvailability: Bool(false), Message: String("m"), Name: String("n"), + OldPermission: String("op"), OldUser: String("ou"), OpenSSHPublicKey: String("osshpk"), Org: String("o"), + Permission: String("p"), PreviousVisibility: String("pv"), ReadOnly: String("ro"), Repo: String("r"), @@ -268,9 +274,11 @@ func TestAuditEntry_Marshal(t *testing.T) { "limited_availability": false, "message": "m", "name": "n", + "old_permission": "op", "old_user": "ou", "openssh_public_key": "osshpk", "org": "o", + "permission": "p", "previous_visibility": "pv", "read_only": "ro", "repo": "r",