diff options
author | James Fargher <jfargher@gitlab.com> | 2021-08-31 02:56:10 +0300 |
---|---|---|
committer | James Fargher <jfargher@gitlab.com> | 2021-09-13 02:28:19 +0300 |
commit | c6d1b4f5d34365442cf29d25400531c5888e5872 (patch) | |
tree | 4e47d60cb9e75d4c2a355d617489595580af062c | |
parent | 6fb266202b44fe040e021e8fec88198c4b202035 (diff) |
Remove headReference from refs service
With DefaultBranchName removed, this function is now unused.
-rw-r--r-- | internal/gitaly/service/ref/refs.go | 35 | ||||
-rw-r--r-- | internal/gitaly/service/ref/refs_test.go | 32 |
2 files changed, 1 insertions, 66 deletions
diff --git a/internal/gitaly/service/ref/refs.go b/internal/gitaly/service/ref/refs.go index fc6185f50..0d8e249e5 100644 --- a/internal/gitaly/service/ref/refs.go +++ b/internal/gitaly/service/ref/refs.go @@ -28,8 +28,7 @@ const ( ) var ( - // We declare the following functions in variables so that we can override them in our tests - headReference = _headReference + // We declare the following function in variables so that we can override them in our tests // FindBranchNames is exported to be used in other packages FindBranchNames = _findBranchNames ) @@ -296,38 +295,6 @@ func _findBranchNames(ctx context.Context, repo git.RepositoryExecutor) ([][]byt return names, nil } -func _headReference(ctx context.Context, repo git.RepositoryExecutor) ([]byte, error) { - var headRef []byte - - cmd, err := repo.Exec(ctx, git.SubCmd{ - Name: "rev-parse", - Flags: []git.Option{git.Flag{Name: "--symbolic-full-name"}}, - Args: []string{"HEAD"}, - }) - if err != nil { - return nil, err - } - - scanner := bufio.NewScanner(cmd) - scanner.Scan() - if err := scanner.Err(); err != nil { - return nil, err - } - headRef = scanner.Bytes() - - if err := cmd.Wait(); err != nil { - // If the ref pointed at by HEAD doesn't exist, the rev-parse fails - // returning the string `"HEAD"`, so we return `nil` without error. - if bytes.Equal(headRef, []byte("HEAD")) { - return nil, nil - } - - return nil, err - } - - return headRef, nil -} - // SetDefaultBranchRef overwrites the default branch ref for the repository func SetDefaultBranchRef(ctx context.Context, repo git.RepositoryExecutor, ref string, cfg config.Cfg) error { if err := repo.ExecAndWait(ctx, git.SubCmd{ diff --git a/internal/gitaly/service/ref/refs_test.go b/internal/gitaly/service/ref/refs_test.go index ea378aa99..8a4858378 100644 --- a/internal/gitaly/service/ref/refs_test.go +++ b/internal/gitaly/service/ref/refs_test.go @@ -5,7 +5,6 @@ import ( "bytes" "fmt" "io" - "io/ioutil" "strings" "testing" "time" @@ -222,37 +221,6 @@ func TestInvalidRepoFindAllTagNamesRequest(t *testing.T) { } } -func TestHeadReference(t *testing.T) { - cfg, repo, _ := testcfg.BuildWithRepo(t) - - ctx, cancel := testhelper.Context() - defer cancel() - - headRef, err := headReference(ctx, localrepo.NewTestRepo(t, cfg, repo)) - require.NoError(t, err) - - require.Equal(t, git.LegacyDefaultRef, headRef) -} - -func TestHeadReferenceWithNonExistingHead(t *testing.T) { - cfg, repo, repoPath := testcfg.BuildWithRepo(t) - - // Write bad HEAD - require.NoError(t, ioutil.WriteFile(repoPath+"/HEAD", []byte("ref: refs/heads/nonexisting"), 0o644)) - defer func() { - // Restore HEAD - require.NoError(t, ioutil.WriteFile(repoPath+"/HEAD", []byte("ref: refs/heads/master"), 0o644)) - }() - - ctx, cancel := testhelper.Context() - defer cancel() - headRef, err := headReference(ctx, localrepo.NewTestRepo(t, cfg, repo)) - require.NoError(t, err) - if headRef != nil { - t.Fatal("Expected HEAD reference to be nil, got '", string(headRef), "'") - } -} - func TestSetDefaultBranchRef(t *testing.T) { cfg, repoProto, _ := testcfg.BuildWithRepo(t) repo := localrepo.NewTestRepo(t, cfg, repoProto) |