diff options
author | James Fargher <jfargher@gitlab.com> | 2021-08-31 02:56:10 +0300 |
---|---|---|
committer | James Fargher <jfargher@gitlab.com> | 2021-09-20 00:58:00 +0300 |
commit | e0a242f2b67ca30a5cd4802ecbf05d12a0554562 (patch) | |
tree | dec3022a24bd5f29a63d481294b7258c8eaa7cb0 | |
parent | cf5d33467ebd6009c4f1552b16a49e64e17d66af (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 ca5fc2b62..d50135f1a 100644 --- a/internal/gitaly/service/ref/refs.go +++ b/internal/gitaly/service/ref/refs.go @@ -22,8 +22,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 ) @@ -91,38 +90,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 507a86a46..bab39b477 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" @@ -219,37 +218,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) |