Skip to content

Commit 826440e

Browse files
committed
refactor: convert required pointer params to values
update exmaples
1 parent 6dda213 commit 826440e

9 files changed

Lines changed: 31 additions & 68 deletions

File tree

example/commitpr/main.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ func getRef() (ref *github.Reference, err error) {
8282
return nil, err
8383
}
8484
newRef := &github.Reference{Ref: github.Ptr(branchRef(*commitBranch)), Object: &github.GitObject{SHA: baseRef.Object.SHA}}
85-
ref, _, err = client.Git.CreateRef(ctx, *sourceOwner, *sourceRepo, newRef)
85+
ref, _, err = client.Git.CreateRef(ctx, *sourceOwner, *sourceRepo, *newRef)
8686
return ref, err
8787
}
8888

@@ -162,14 +162,14 @@ func pushCommit(ref *github.Reference, tree *github.Tree) (err error) {
162162
return openpgp.ArmoredDetachSign(w, key, r, nil)
163163
})
164164
}
165-
newCommit, _, err := client.Git.CreateCommit(ctx, *sourceOwner, *sourceRepo, commit, &opts)
165+
newCommit, _, err := client.Git.CreateCommit(ctx, *sourceOwner, *sourceRepo, *commit, &opts)
166166
if err != nil {
167167
return err
168168
}
169169

170170
// Attach the commit to the master branch.
171171
ref.Object.SHA = newCommit.SHA
172-
_, _, err = client.Git.UpdateRef(ctx, *sourceOwner, *sourceRepo, ref, false)
172+
_, _, err = client.Git.UpdateRef(ctx, *sourceOwner, *sourceRepo, *ref, false)
173173
return err
174174
}
175175

github/git_blobs.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ func (s *GitService) GetBlobRaw(ctx context.Context, owner, repo, sha string) ([
7171
// GitHub API docs: https://docs.github.com/rest/git/blobs#create-a-blob
7272
//
7373
//meta:operation POST /repos/{owner}/{repo}/git/blobs
74-
func (s *GitService) CreateBlob(ctx context.Context, owner string, repo string, blob *Blob) (*Blob, *Response, error) {
74+
func (s *GitService) CreateBlob(ctx context.Context, owner string, repo string, blob Blob) (*Blob, *Response, error) {
7575
u := fmt.Sprintf("repos/%v/%v/git/blobs", owner, repo)
7676
req, err := s.client.NewRequest("POST", u, blob)
7777
if err != nil {

github/git_blobs_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ func TestGitService_CreateBlob(t *testing.T) {
109109
t.Parallel()
110110
client, mux, _ := setup(t)
111111

112-
input := &Blob{
112+
input := Blob{
113113
SHA: Ptr("s"),
114114
Content: Ptr("blob content"),
115115
Encoding: Ptr("utf-8"),
@@ -123,8 +123,8 @@ func TestGitService_CreateBlob(t *testing.T) {
123123
testMethod(t, r, "POST")
124124

125125
want := input
126-
if !cmp.Equal(v, want) {
127-
t.Errorf("Git.CreateBlob request body: %+v, want %+v", v, want)
126+
if !cmp.Equal(*v, want) {
127+
t.Errorf("Git.CreateBlob request body: %+v, want %+v", *v, want)
128128
}
129129

130130
fmt.Fprint(w, `{
@@ -143,8 +143,8 @@ func TestGitService_CreateBlob(t *testing.T) {
143143

144144
want := input
145145

146-
if !cmp.Equal(*blob, *want) {
147-
t.Errorf("Git.CreateBlob returned %+v, want %+v", *blob, *want)
146+
if !cmp.Equal(*blob, want) {
147+
t.Errorf("Git.CreateBlob returned %+v, want %+v", *blob, want)
148148
}
149149

150150
const methodName = "CreateBlob"
@@ -167,7 +167,7 @@ func TestGitService_CreateBlob_invalidOwner(t *testing.T) {
167167
client, _, _ := setup(t)
168168

169169
ctx := context.Background()
170-
_, _, err := client.Git.CreateBlob(ctx, "%", "%", &Blob{})
170+
_, _, err := client.Git.CreateBlob(ctx, "%", "%", Blob{})
171171
testURLParseError(t, err)
172172
}
173173

github/git_commits.go

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -126,10 +126,7 @@ type CreateCommitOptions struct {
126126
// GitHub API docs: https://docs.github.com/rest/git/commits#create-a-commit
127127
//
128128
//meta:operation POST /repos/{owner}/{repo}/git/commits
129-
func (s *GitService) CreateCommit(ctx context.Context, owner string, repo string, commit *Commit, opts *CreateCommitOptions) (*Commit, *Response, error) {
130-
if commit == nil {
131-
return nil, nil, errors.New("commit must be provided")
132-
}
129+
func (s *GitService) CreateCommit(ctx context.Context, owner string, repo string, commit Commit, opts *CreateCommitOptions) (*Commit, *Response, error) {
133130
if opts == nil {
134131
opts = &CreateCommitOptions{}
135132
}

github/git_commits_test.go

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ func TestGitService_CreateCommit(t *testing.T) {
176176
t.Parallel()
177177
client, mux, _ := setup(t)
178178

179-
input := &Commit{
179+
input := Commit{
180180
Message: Ptr("Commit Message."),
181181
Tree: &Tree{SHA: Ptr("t")},
182182
Parents: []*Commit{{SHA: Ptr("p")}},
@@ -231,7 +231,7 @@ func TestGitService_CreateSignedCommit(t *testing.T) {
231231

232232
signature := "----- BEGIN PGP SIGNATURE -----\n\naaaa\naaaa\n----- END PGP SIGNATURE -----"
233233

234-
input := &Commit{
234+
input := Commit{
235235
Message: Ptr("Commit Message."),
236236
Tree: &Tree{SHA: Ptr("t")},
237237
Parents: []*Commit{{SHA: Ptr("p")}},
@@ -288,7 +288,7 @@ func TestGitService_CreateSignedCommitWithInvalidParams(t *testing.T) {
288288
t.Parallel()
289289
client, _, _ := setup(t)
290290

291-
input := &Commit{}
291+
input := Commit{}
292292

293293
ctx := context.Background()
294294
opts := CreateCommitOptions{Signer: uncalledSigner(t)}
@@ -298,17 +298,6 @@ func TestGitService_CreateSignedCommitWithInvalidParams(t *testing.T) {
298298
}
299299
}
300300

301-
func TestGitService_CreateCommitWithNilCommit(t *testing.T) {
302-
t.Parallel()
303-
client, _, _ := setup(t)
304-
305-
ctx := context.Background()
306-
_, _, err := client.Git.CreateCommit(ctx, "o", "r", nil, nil)
307-
if err == nil {
308-
t.Error("Expected error to be returned because commit=nil")
309-
}
310-
}
311-
312301
func TestGitService_CreateCommit_WithSigner(t *testing.T) {
313302
t.Parallel()
314303
client, mux, _ := setup(t)
@@ -327,7 +316,7 @@ committer go-github <go-github@github.com> 1493849023 +0200
327316
328317
Commit Message.`
329318
sha := "commitSha"
330-
input := &Commit{
319+
input := Commit{
331320
SHA: &sha,
332321
Message: Ptr("Commit Message."),
333322
Tree: &Tree{SHA: Ptr("t")},
@@ -513,7 +502,7 @@ func TestGitService_CreateCommit_invalidOwner(t *testing.T) {
513502
client, _, _ := setup(t)
514503

515504
ctx := context.Background()
516-
_, _, err := client.Git.CreateCommit(ctx, "%", "%", &Commit{}, nil)
505+
_, _, err := client.Git.CreateCommit(ctx, "%", "%", Commit{}, nil)
517506
testURLParseError(t, err)
518507
}
519508

github/git_refs.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -127,10 +127,7 @@ func (s *GitService) ListMatchingRefs(ctx context.Context, owner, repo string, o
127127
// GitHub API docs: https://docs.github.com/rest/git/refs#create-a-reference
128128
//
129129
//meta:operation POST /repos/{owner}/{repo}/git/refs
130-
func (s *GitService) CreateRef(ctx context.Context, owner string, repo string, ref *Reference) (*Reference, *Response, error) {
131-
if ref == nil {
132-
return nil, nil, errors.New("reference must be provided")
133-
}
130+
func (s *GitService) CreateRef(ctx context.Context, owner string, repo string, ref Reference) (*Reference, *Response, error) {
134131
if ref.Ref == nil {
135132
return nil, nil, errors.New("ref must be provided")
136133
}
@@ -159,10 +156,7 @@ func (s *GitService) CreateRef(ctx context.Context, owner string, repo string, r
159156
// GitHub API docs: https://docs.github.com/rest/git/refs#update-a-reference
160157
//
161158
//meta:operation PATCH /repos/{owner}/{repo}/git/refs/{ref}
162-
func (s *GitService) UpdateRef(ctx context.Context, owner string, repo string, ref *Reference, force bool) (*Reference, *Response, error) {
163-
if ref == nil {
164-
return nil, nil, errors.New("reference must be provided")
165-
}
159+
func (s *GitService) UpdateRef(ctx context.Context, owner string, repo string, ref Reference, force bool) (*Reference, *Response, error) {
166160
if ref.Ref == nil {
167161
return nil, nil, errors.New("ref must be provided")
168162
}

github/git_refs_test.go

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -412,7 +412,7 @@ func TestGitService_CreateRef(t *testing.T) {
412412
})
413413

414414
ctx := context.Background()
415-
ref, _, err := client.Git.CreateRef(ctx, "o", "r", &Reference{
415+
ref, _, err := client.Git.CreateRef(ctx, "o", "r", Reference{
416416
Ref: Ptr("refs/heads/b"),
417417
Object: &GitObject{
418418
SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd"),
@@ -436,7 +436,7 @@ func TestGitService_CreateRef(t *testing.T) {
436436
}
437437

438438
// without 'refs/' prefix
439-
_, _, err = client.Git.CreateRef(ctx, "o", "r", &Reference{
439+
_, _, err = client.Git.CreateRef(ctx, "o", "r", Reference{
440440
Ref: Ptr("heads/b"),
441441
Object: &GitObject{
442442
SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd"),
@@ -448,15 +448,11 @@ func TestGitService_CreateRef(t *testing.T) {
448448

449449
const methodName = "CreateRef"
450450
testBadOptions(t, methodName, func() (err error) {
451-
_, _, err = client.Git.CreateRef(ctx, "o", "r", nil)
451+
_, _, err = client.Git.CreateRef(ctx, "o", "r", Reference{Ref: nil})
452452
return err
453453
})
454454
testBadOptions(t, methodName, func() (err error) {
455-
_, _, err = client.Git.CreateRef(ctx, "o", "r", &Reference{Ref: nil})
456-
return err
457-
})
458-
testBadOptions(t, methodName, func() (err error) {
459-
_, _, err = client.Git.CreateRef(ctx, "\n", "\n", &Reference{
455+
_, _, err = client.Git.CreateRef(ctx, "\n", "\n", Reference{
460456
Ref: Ptr("refs/heads/b"),
461457
Object: &GitObject{
462458
SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd"),
@@ -466,7 +462,7 @@ func TestGitService_CreateRef(t *testing.T) {
466462
})
467463

468464
testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) {
469-
got, resp, err := client.Git.CreateRef(ctx, "o", "r", &Reference{
465+
got, resp, err := client.Git.CreateRef(ctx, "o", "r", Reference{
470466
Ref: Ptr("refs/heads/b"),
471467
Object: &GitObject{
472468
SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd"),
@@ -509,7 +505,7 @@ func TestGitService_UpdateRef(t *testing.T) {
509505
})
510506

511507
ctx := context.Background()
512-
ref, _, err := client.Git.UpdateRef(ctx, "o", "r", &Reference{
508+
ref, _, err := client.Git.UpdateRef(ctx, "o", "r", Reference{
513509
Ref: Ptr("refs/heads/b"),
514510
Object: &GitObject{SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd")},
515511
}, true)
@@ -531,7 +527,7 @@ func TestGitService_UpdateRef(t *testing.T) {
531527
}
532528

533529
// without 'refs/' prefix
534-
_, _, err = client.Git.UpdateRef(ctx, "o", "r", &Reference{
530+
_, _, err = client.Git.UpdateRef(ctx, "o", "r", Reference{
535531
Ref: Ptr("heads/b"),
536532
Object: &GitObject{SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd")},
537533
}, true)
@@ -541,23 +537,19 @@ func TestGitService_UpdateRef(t *testing.T) {
541537

542538
const methodName = "UpdateRef"
543539
testBadOptions(t, methodName, func() (err error) {
544-
_, _, err = client.Git.UpdateRef(ctx, "o", "r", nil, true)
545-
return err
546-
})
547-
testBadOptions(t, methodName, func() (err error) {
548-
_, _, err = client.Git.UpdateRef(ctx, "o", "r", &Reference{Ref: nil}, true)
540+
_, _, err = client.Git.UpdateRef(ctx, "o", "r", Reference{Ref: nil}, true)
549541
return err
550542
})
551543
testBadOptions(t, methodName, func() (err error) {
552-
_, _, err = client.Git.UpdateRef(ctx, "\n", "\n", &Reference{
544+
_, _, err = client.Git.UpdateRef(ctx, "\n", "\n", Reference{
553545
Ref: Ptr("refs/heads/b"),
554546
Object: &GitObject{SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd")},
555547
}, true)
556548
return err
557549
})
558550

559551
testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) {
560-
got, resp, err := client.Git.UpdateRef(ctx, "o", "r", &Reference{
552+
got, resp, err := client.Git.UpdateRef(ctx, "o", "r", Reference{
561553
Ref: Ptr("refs/heads/b"),
562554
Object: &GitObject{SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd")},
563555
}, true)
@@ -670,7 +662,7 @@ func TestGitService_UpdateRef_pathEscape(t *testing.T) {
670662
})
671663

672664
ctx := context.Background()
673-
ref, _, err := client.Git.UpdateRef(ctx, "o", "r", &Reference{
665+
ref, _, err := client.Git.UpdateRef(ctx, "o", "r", Reference{
674666
Ref: Ptr("refs/heads/b#1"),
675667
Object: &GitObject{SHA: Ptr("aa218f56b14c9653891f9e74264a383fa43fefbd")},
676668
}, true)

github/git_tags.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ package github
77

88
import (
99
"context"
10-
"errors"
1110
"fmt"
1211
)
1312

@@ -60,11 +59,7 @@ func (s *GitService) GetTag(ctx context.Context, owner string, repo string, sha
6059
// GitHub API docs: https://docs.github.com/rest/git/tags#create-a-tag-object
6160
//
6261
//meta:operation POST /repos/{owner}/{repo}/git/tags
63-
func (s *GitService) CreateTag(ctx context.Context, owner string, repo string, tag *Tag) (*Tag, *Response, error) {
64-
if tag == nil {
65-
return nil, nil, errors.New("tag must be provided")
66-
}
67-
62+
func (s *GitService) CreateTag(ctx context.Context, owner string, repo string, tag Tag) (*Tag, *Response, error) {
6863
u := fmt.Sprintf("repos/%v/%v/git/tags", owner, repo)
6964

7065
// convert Tag into a createTagRequest

github/git_tags_test.go

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ func TestGitService_CreateTag(t *testing.T) {
6969
})
7070

7171
ctx := context.Background()
72-
inputTag := &Tag{
72+
inputTag := Tag{
7373
Tag: input.Tag,
7474
Object: &GitObject{SHA: input.Object},
7575
}
@@ -84,10 +84,6 @@ func TestGitService_CreateTag(t *testing.T) {
8484
}
8585

8686
const methodName = "CreateTag"
87-
testBadOptions(t, methodName, func() (err error) {
88-
_, _, err = client.Git.CreateTag(ctx, "o", "r", nil)
89-
return err
90-
})
9187
testBadOptions(t, methodName, func() (err error) {
9288
_, _, err = client.Git.CreateTag(ctx, "\n", "\n", inputTag)
9389
return err

0 commit comments

Comments
 (0)