Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Cai <jcai@gitlab.com>2023-01-11 01:00:07 +0300
committerJohn Cai <jcai@gitlab.com>2023-01-11 01:00:07 +0300
commit3dc98b368b6240e4e7a65d981efc9095bfaa3cbe (patch)
tree2296800e313b6d2f39bae93bd2da1bfc98ab18ca
parentfd4a815831bc2375d594fd9b7c3d358f975c2b19 (diff)
wip: catfile blackbox testingjc-unify-blob-writes-catfile
-rw-r--r--internal/git/catfile/cache_test.go40
-rw-r--r--internal/git/catfile/object_content_reader_test.go60
-rw-r--r--internal/git/catfile/object_info_reader_test.go49
-rw-r--r--internal/git/catfile/parser_test.go16
-rw-r--r--internal/git/catfile/request_queue_test.go67
-rw-r--r--internal/git/catfile/tag_test.go14
-rw-r--r--internal/git/catfile/testhelper_test.go40
7 files changed, 117 insertions, 169 deletions
diff --git a/internal/git/catfile/cache_test.go b/internal/git/catfile/cache_test.go
index e2ca83332..8108a7857 100644
--- a/internal/git/catfile/cache_test.go
+++ b/internal/git/catfile/cache_test.go
@@ -1,23 +1,6 @@
package catfile
-import (
- "context"
- "errors"
- "io"
- "os"
- "testing"
- "time"
-
- "github.com/stretchr/testify/require"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git/gittest"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git/repository"
- "gitlab.com/gitlab-org/gitaly/v15/internal/gitaly/config"
- "gitlab.com/gitlab-org/gitaly/v15/internal/helper"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper/testcfg"
- "gitlab.com/gitlab-org/labkit/correlation"
- "google.golang.org/grpc/metadata"
-)
+/**
func TestProcesses_add(t *testing.T) {
ctx := testhelper.Context(t)
@@ -211,7 +194,7 @@ func TestCache_ObjectReader(t *testing.T) {
})
gittest.WriteCommit(t, cfg, repoPath, gittest.WithBranch("main"))
- repoExecutor := newRepoExecutor(t, cfg, repo)
+ RepoExecutor := NewRepoExecutor(t, cfg, repo)
cache := newCache(time.Hour, 10, helper.NewManualTicker())
defer cache.Stop()
@@ -220,7 +203,7 @@ func TestCache_ObjectReader(t *testing.T) {
// The context doesn't carry a session ID and is thus uncacheable.
// The process should never get returned to the cache and must be
// killed on context cancellation.
- reader, cancel, err := cache.ObjectReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectReader(ctx, RepoExecutor)
require.NoError(t, err)
cancel()
@@ -237,7 +220,7 @@ func TestCache_ObjectReader(t *testing.T) {
metadata.Pairs(SessionIDField, "1"),
)
- reader, cancel, err := cache.ObjectReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectReader(ctx, RepoExecutor)
require.NoError(t, err)
// Cancel the context such that the process will be considered for return to the
@@ -263,7 +246,7 @@ func TestCache_ObjectReader(t *testing.T) {
metadata.Pairs(SessionIDField, "1"),
)
- reader, cancel, err := cache.ObjectReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectReader(ctx, RepoExecutor)
require.NoError(t, err)
// While we request object data, we do not consume it at all. The reader is thus
@@ -288,7 +271,7 @@ func TestCache_ObjectReader(t *testing.T) {
metadata.Pairs(SessionIDField, "1"),
)
- reader, cancel, err := cache.ObjectReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectReader(ctx, RepoExecutor)
require.NoError(t, err)
// Closed processes naturally cannot be reused anymore and thus shouldn't ever get
@@ -311,7 +294,7 @@ func TestCache_ObjectInfoReader(t *testing.T) {
})
gittest.WriteCommit(t, cfg, repoPath, gittest.WithBranch("main"))
- repoExecutor := newRepoExecutor(t, cfg, repo)
+ RepoExecutor := NewRepoExecutor(t, cfg, repo)
cache := newCache(time.Hour, 10, helper.NewManualTicker())
defer cache.Stop()
@@ -320,7 +303,7 @@ func TestCache_ObjectInfoReader(t *testing.T) {
// The context doesn't carry a session ID and is thus uncacheable.
// The process should never get returned to the cache and must be
// killed on context cancellation.
- reader, cancel, err := cache.ObjectInfoReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectInfoReader(ctx, RepoExecutor)
require.NoError(t, err)
cancel()
@@ -337,7 +320,7 @@ func TestCache_ObjectInfoReader(t *testing.T) {
metadata.Pairs(SessionIDField, "1"),
)
- reader, cancel, err := cache.ObjectInfoReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectInfoReader(ctx, RepoExecutor)
require.NoError(t, err)
// Cancel the process such it will be considered for return to the cache.
@@ -362,7 +345,7 @@ func TestCache_ObjectInfoReader(t *testing.T) {
metadata.Pairs(SessionIDField, "1"),
)
- reader, cancel, err := cache.ObjectInfoReader(ctx, repoExecutor)
+ reader, cancel, err := cache.ObjectInfoReader(ctx, RepoExecutor)
require.NoError(t, err)
// Closed processes naturally cannot be reused anymore and thus shouldn't ever get
@@ -391,7 +374,7 @@ func mustCreateCacheable(t *testing.T, cfg config.Cfg, repo repository.GitRepo)
ctx, cancel := context.WithCancel(testhelper.Context(t))
- batch, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repo), nil)
+ batch, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repo), nil)
require.NoError(t, err)
return batch, cancel
@@ -419,3 +402,4 @@ func keys(t *testing.T, p *processes) []key {
return result
}
+**/
diff --git a/internal/git/catfile/object_content_reader_test.go b/internal/git/catfile/object_content_reader_test.go
index ba8ac1af0..73148cb00 100644
--- a/internal/git/catfile/object_content_reader_test.go
+++ b/internal/git/catfile/object_content_reader_test.go
@@ -1,21 +1,6 @@
package catfile
-import (
- "errors"
- "fmt"
- "io"
- "os"
- "testing"
-
- "github.com/prometheus/client_golang/prometheus"
- "github.com/prometheus/client_golang/prometheus/testutil"
- "github.com/stretchr/testify/require"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git/gittest"
- "gitlab.com/gitlab-org/gitaly/v15/internal/helper/text"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper/testcfg"
-)
+/*
func TestObjectContentReader_reader(t *testing.T) {
ctx := testhelper.Context(t)
@@ -37,7 +22,7 @@ func TestObjectContentReader_reader(t *testing.T) {
commitContents := gittest.Exec(t, cfg, "-C", repoPath, "cat-file", "-p", commitID.String())
t.Run("read existing object by ref", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
object, err := reader.Object(ctx, "refs/heads/main")
@@ -49,7 +34,7 @@ func TestObjectContentReader_reader(t *testing.T) {
})
t.Run("read existing object by object ID", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
object, err := reader.Object(ctx, commitID.Revision())
@@ -61,7 +46,7 @@ func TestObjectContentReader_reader(t *testing.T) {
})
t.Run("read missing ref", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
_, err = reader.Object(ctx, "refs/heads/does-not-exist")
@@ -78,7 +63,7 @@ func TestObjectContentReader_reader(t *testing.T) {
})
t.Run("read fails when not consuming previous object", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
_, err = reader.Object(ctx, commitID.Revision())
@@ -90,7 +75,7 @@ func TestObjectContentReader_reader(t *testing.T) {
})
t.Run("read fails when partially consuming previous object", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
object, err := reader.Object(ctx, commitID.Revision())
@@ -107,7 +92,7 @@ func TestObjectContentReader_reader(t *testing.T) {
t.Run("read increments Prometheus counter", func(t *testing.T) {
counter := prometheus.NewCounterVec(prometheus.CounterOpts{}, []string{"type"})
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), counter)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), counter)
require.NoError(t, err)
for objectType, revision := range map[string]git.Revision{
@@ -141,7 +126,7 @@ func TestObjectContentReader_queue(t *testing.T) {
barfooBlob := gittest.WriteBlob(t, cfg, repoPath, []byte("barfoo"))
t.Run("read single object", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -160,7 +145,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("read multiple objects", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -184,7 +169,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("request multiple objects", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -206,7 +191,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("read without request", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -218,7 +203,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("flush with single request", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -240,7 +225,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("flush with multiple requests", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -263,7 +248,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("flush without request", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -277,7 +262,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("request invalid object", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -292,7 +277,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("can continue reading after NotFoundError", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -318,7 +303,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("requesting multiple queues fails", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
_, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -337,7 +322,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("requesting object dirties reader", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -368,7 +353,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("closing queue blocks request", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -384,7 +369,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("closing queue blocks read", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -405,7 +390,7 @@ func TestObjectContentReader_queue(t *testing.T) {
})
t.Run("closing queue blocks consuming", func(t *testing.T) {
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.objectQueue(ctx, "trace")
@@ -447,7 +432,7 @@ func TestObjectContentReader_replaceRefs(t *testing.T) {
gittest.Exec(t, cfg, "-c", "core.useReplaceRefs=true", "-C", repoPath, "cat-file", "-p", originalOID.String()),
))
- reader, err := newObjectContentReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectContentReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
object, err := reader.Object(ctx, originalOID.Revision())
@@ -460,3 +445,4 @@ func TestObjectContentReader_replaceRefs(t *testing.T) {
// content of the blob.
require.Equal(t, "original", string(contents))
}
+*/
diff --git a/internal/git/catfile/object_info_reader_test.go b/internal/git/catfile/object_info_reader_test.go
index 99d088fa3..1274df981 100644
--- a/internal/git/catfile/object_info_reader_test.go
+++ b/internal/git/catfile/object_info_reader_test.go
@@ -1,24 +1,6 @@
package catfile
-import (
- "bufio"
- "errors"
- "fmt"
- "io"
- "os"
- "strconv"
- "strings"
- "testing"
-
- "github.com/prometheus/client_golang/prometheus"
- "github.com/prometheus/client_golang/prometheus/testutil"
- "github.com/stretchr/testify/require"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git/gittest"
- "gitlab.com/gitlab-org/gitaly/v15/internal/helper/text"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper/testcfg"
-)
+/**
func TestParseObjectInfo_success(t *testing.T) {
t.Parallel()
@@ -182,7 +164,7 @@ func TestObjectInfoReader(t *testing.T) {
t.Run(tc.desc, func(t *testing.T) {
counter := prometheus.NewCounterVec(prometheus.CounterOpts{}, []string{"type"})
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), counter)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), counter)
require.NoError(t, err)
require.Equal(t, float64(0), testutil.ToFloat64(counter.WithLabelValues("info")))
@@ -236,7 +218,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
}
t.Run("read single info", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -252,7 +234,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("read multiple object infos", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -273,7 +255,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("request multiple object infos", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -292,7 +274,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("read without request", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -304,7 +286,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("flush with single request", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -323,7 +305,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("flush with multiple requests", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -343,7 +325,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("flush without request", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -357,7 +339,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("request invalid object info", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -372,7 +354,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("can continue reading after NotFoundError", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -395,7 +377,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("requesting multiple queues fails", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
_, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -414,7 +396,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("requesting object dirties reader", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -438,7 +420,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("closing queue blocks request", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -454,7 +436,7 @@ func TestObjectInfoReader_queue(t *testing.T) {
})
t.Run("closing queue blocks read", func(t *testing.T) {
- reader, err := newObjectInfoReader(ctx, newRepoExecutor(t, cfg, repoProto), nil)
+ reader, err := newObjectInfoReader(ctx, NewRepoExecutor(t, cfg, repoProto), nil)
require.NoError(t, err)
queue, cleanup, err := reader.infoQueue(ctx, "trace")
@@ -474,3 +456,4 @@ func TestObjectInfoReader_queue(t *testing.T) {
require.Equal(t, fmt.Errorf("cannot read object info: %w", os.ErrClosed), err)
})
}
+**/
diff --git a/internal/git/catfile/parser_test.go b/internal/git/catfile/parser_test.go
index 59afbb127..e6015b4e6 100644
--- a/internal/git/catfile/parser_test.go
+++ b/internal/git/catfile/parser_test.go
@@ -1,19 +1,6 @@
package catfile
-import (
- "bytes"
- "fmt"
- "strings"
- "testing"
- "time"
-
- "github.com/stretchr/testify/require"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git/gittest"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper"
- "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb"
- "google.golang.org/protobuf/types/known/timestamppb"
-)
+/**
func TestParser_ParseCommit(t *testing.T) {
t.Parallel()
@@ -369,3 +356,4 @@ fF3T79iV8paT4/OfX8Ygg=
})
}
}
+**/
diff --git a/internal/git/catfile/request_queue_test.go b/internal/git/catfile/request_queue_test.go
index bd8cd5b59..cd1f2bf29 100644
--- a/internal/git/catfile/request_queue_test.go
+++ b/internal/git/catfile/request_queue_test.go
@@ -1,4 +1,4 @@
-package catfile
+package catfile_test
import (
"context"
@@ -11,6 +11,7 @@ import (
"github.com/stretchr/testify/require"
"gitlab.com/gitlab-org/gitaly/v15/internal/git"
+ "gitlab.com/gitlab-org/gitaly/v15/internal/git/catfile"
"gitlab.com/gitlab-org/gitaly/v15/internal/git/gittest"
"gitlab.com/gitlab-org/gitaly/v15/internal/testhelper"
"gitlab.com/gitlab-org/gitaly/v15/internal/testhelper/testcfg"
@@ -41,10 +42,10 @@ func TestRequestQueue_ReadObject(t *testing.T) {
reader, queue := newInterceptedObjectQueue(t, ctx, "#!/bin/sh\nread\n")
require.NoError(t, queue.RequestObject("foo"))
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
- reader.close()
- require.True(t, queue.isDirty())
+ reader.Close()
+ require.True(t, queue.IsDirty())
_, err := queue.ReadObject()
require.Equal(t, fmt.Errorf("cannot read object info: %w", fmt.Errorf("file already closed")), err)
@@ -67,7 +68,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
_, err = queue.ReadObject()
require.Equal(t, fmt.Errorf("current object has not been fully read"), err)
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
})
t.Run("read with invalid object header", func(t *testing.T) {
@@ -81,7 +82,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
require.Equal(t, fmt.Errorf("invalid info line: %q", "something something"), err)
// The queue must be dirty when we failed due to an unexpected error.
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
})
t.Run("read with unexpected exit", func(t *testing.T) {
@@ -95,7 +96,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
require.Equal(t, fmt.Errorf("read info line: %w", io.EOF), err)
// The queue must be dirty when we failed due to an unexpected error.
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
})
t.Run("read with missing object", func(t *testing.T) {
@@ -110,7 +111,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
// The queue must be empty even if the object wasn't found: this is a graceful
// failure that we should handle alright.
- require.False(t, queue.isDirty())
+ require.False(t, queue.IsDirty())
})
t.Run("read single object", func(t *testing.T) {
@@ -120,11 +121,11 @@ func TestRequestQueue_ReadObject(t *testing.T) {
`, oid))
require.NoError(t, queue.RequestObject("foo"))
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
object, err := queue.ReadObject()
require.NoError(t, err)
- require.Equal(t, ObjectInfo{
+ require.Equal(t, catfile.ObjectInfo{
Oid: oid,
Type: "blob",
Size: 10,
@@ -134,7 +135,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
require.NoError(t, err)
require.Equal(t, "1234567890", string(data))
- require.False(t, queue.isDirty())
+ require.False(t, queue.IsDirty())
})
t.Run("read multiple objects", func(t *testing.T) {
@@ -149,14 +150,14 @@ func TestRequestQueue_ReadObject(t *testing.T) {
require.NoError(t, queue.RequestObject("foo"))
require.NoError(t, queue.RequestObject("foo"))
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
for _, expectedObject := range []struct {
- info ObjectInfo
+ info catfile.ObjectInfo
data string
}{
{
- info: ObjectInfo{
+ info: catfile.ObjectInfo{
Oid: oid,
Type: "blob",
Size: 10,
@@ -164,7 +165,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
data: "1234567890",
},
{
- info: ObjectInfo{
+ info: catfile.ObjectInfo{
Oid: secondOID,
Type: "commit",
Size: 10,
@@ -172,7 +173,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
data: "0987654321",
},
} {
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
object, err := queue.ReadObject()
require.NoError(t, err)
@@ -183,7 +184,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
require.Equal(t, expectedObject.data, string(data))
}
- require.False(t, queue.isDirty())
+ require.False(t, queue.IsDirty())
})
t.Run("truncated object", func(t *testing.T) {
@@ -193,11 +194,11 @@ func TestRequestQueue_ReadObject(t *testing.T) {
`, oid))
require.NoError(t, queue.RequestObject("foo"))
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
object, err := queue.ReadObject()
require.NoError(t, err)
- require.Equal(t, ObjectInfo{
+ require.Equal(t, catfile.ObjectInfo{
Oid: oid,
Type: "blob",
Size: 10,
@@ -216,7 +217,7 @@ func TestRequestQueue_ReadObject(t *testing.T) {
_, err = object.Read(buf[:])
require.Equal(t, fmt.Errorf("discard newline: \"EOF\""), err)
- require.True(t, queue.isDirty())
+ require.True(t, queue.IsDirty())
})
}
@@ -227,7 +228,7 @@ func TestRequestQueue_RequestObject(t *testing.T) {
oid := git.ObjectID(strings.Repeat("1", gittest.DefaultObjectHash.EncodedLen()))
- requireRevision := func(t *testing.T, queue *requestQueue, rev git.Revision) {
+ requireRevision := func(t *testing.T, queue catfile.ObjectQueue, rev git.Revision) {
object, err := queue.ReadObject()
require.NoError(t, err)
@@ -238,7 +239,7 @@ func TestRequestQueue_RequestObject(t *testing.T) {
t.Run("requesting revision on closed queue", func(t *testing.T) {
_, queue := newInterceptedObjectQueue(t, ctx, "#!/bin/sh")
- queue.close()
+ queue.Close()
require.Equal(t, fmt.Errorf("cannot request revision: %w", os.ErrClosed), queue.RequestObject("foo"))
})
@@ -332,7 +333,7 @@ func TestRequestQueue_RequestInfo(t *testing.T) {
t.Run("requesting revision on closed queue", func(t *testing.T) {
_, queue := newInterceptedInfoQueue(t, ctx, "#!/bin/sh")
- queue.close()
+ queue.Close()
require.Equal(t, fmt.Errorf("cannot request revision: %w", os.ErrClosed), queue.RequestInfo("foo"))
})
@@ -409,7 +410,7 @@ func TestRequestQueueCounters64BitAlignment(t *testing.T) {
require.Equal(t, 0, int(unsafe.Sizeof(requestQueue{}.counters))%8)
}
-func newInterceptedObjectQueue(t *testing.T, ctx context.Context, script string) (ObjectContentReader, *requestQueue) {
+func newInterceptedObjectQueue(t *testing.T, ctx context.Context, script string) (catfile.ObjectContentReader, catfile.ObjectQueue) {
cfg := testcfg.Build(t)
repo, _ := gittest.CreateRepository(t, ctx, cfg, gittest.CreateRepositoryConfig{
SkipCreationViaService: true,
@@ -418,23 +419,23 @@ func newInterceptedObjectQueue(t *testing.T, ctx context.Context, script string)
commandFactory := gittest.NewInterceptingCommandFactory(t, ctx, cfg, func(execEnv git.ExecutionEnvironment) string {
return script
})
- repoExecutor := repoExecutor{
+ RepoExecutor := RepoExecutor{
GitRepo: repo,
gitCmdFactory: commandFactory,
}
- reader, err := newObjectContentReader(ctx, &repoExecutor, nil)
+ reader, err := NewObjectContentReader(ctx, &RepoExecutor, nil)
require.NoError(t, err)
- t.Cleanup(reader.close)
+ t.Cleanup(reader.Close)
- queue, cleanup, err := reader.objectQueue(ctx, "trace")
+ queue, cleanup, err := reader.ObjectQueue(ctx)
require.NoError(t, err)
t.Cleanup(cleanup)
return reader, queue
}
-func newInterceptedInfoQueue(t *testing.T, ctx context.Context, script string) (ObjectInfoReader, *requestQueue) {
+func newInterceptedInfoQueue(t *testing.T, ctx context.Context, script string) (catfile.ObjectInfoReader, catfile.ObjectInfoQueue) {
cfg := testcfg.Build(t)
repo, _ := gittest.CreateRepository(t, ctx, cfg, gittest.CreateRepositoryConfig{
SkipCreationViaService: true,
@@ -443,16 +444,16 @@ func newInterceptedInfoQueue(t *testing.T, ctx context.Context, script string) (
commandFactory := gittest.NewInterceptingCommandFactory(t, ctx, cfg, func(execEnv git.ExecutionEnvironment) string {
return script
})
- repoExecutor := repoExecutor{
+ RepoExecutor := RepoExecutor{
GitRepo: repo,
gitCmdFactory: commandFactory,
}
- reader, err := newObjectInfoReader(ctx, &repoExecutor, nil)
+ reader, err := NewObjectInfoReader(ctx, &RepoExecutor, nil)
require.NoError(t, err)
- t.Cleanup(reader.close)
+ t.Cleanup(reader.Close)
- queue, cleanup, err := reader.infoQueue(ctx, "trace")
+ queue, cleanup, err := reader.InfoQueue(ctx)
require.NoError(t, err)
t.Cleanup(cleanup)
diff --git a/internal/git/catfile/tag_test.go b/internal/git/catfile/tag_test.go
index efc54e20c..4ea925236 100644
--- a/internal/git/catfile/tag_test.go
+++ b/internal/git/catfile/tag_test.go
@@ -1,17 +1,6 @@
package catfile
-import (
- "fmt"
- "strings"
- "testing"
-
- "github.com/stretchr/testify/require"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git"
- "gitlab.com/gitlab-org/gitaly/v15/internal/git/gittest"
- "gitlab.com/gitlab-org/gitaly/v15/internal/helper"
- "gitlab.com/gitlab-org/gitaly/v15/internal/testhelper"
- "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb"
-)
+/**
func TestGetTag(t *testing.T) {
ctx := testhelper.Context(t)
@@ -95,3 +84,4 @@ func TestTrimTag(t *testing.T) {
})
}
}
+**/
diff --git a/internal/git/catfile/testhelper_test.go b/internal/git/catfile/testhelper_test.go
index dd226a468..246451750 100644
--- a/internal/git/catfile/testhelper_test.go
+++ b/internal/git/catfile/testhelper_test.go
@@ -23,23 +23,23 @@ func TestMain(m *testing.M) {
testhelper.Run(m)
}
-type repoExecutor struct {
+type RepoExecutor struct {
repository.GitRepo
- gitCmdFactory git.CommandFactory
+ GitCmdFactory git.CommandFactory
}
-func newRepoExecutor(t *testing.T, cfg config.Cfg, repo repository.GitRepo) git.RepositoryExecutor {
- return &repoExecutor{
+func NewRepoExecutor(t *testing.T, cfg config.Cfg, repo repository.GitRepo) git.RepositoryExecutor {
+ return &RepoExecutor{
GitRepo: repo,
- gitCmdFactory: gittest.NewCommandFactory(t, cfg),
+ GitCmdFactory: gittest.NewCommandFactory(t, cfg),
}
}
-func (e *repoExecutor) Exec(ctx context.Context, cmd git.Command, opts ...git.CmdOpt) (*command.Command, error) {
- return e.gitCmdFactory.New(ctx, e.GitRepo, cmd, opts...)
+func (e *RepoExecutor) Exec(ctx context.Context, cmd git.Command, opts ...git.CmdOpt) (*command.Command, error) {
+ return e.GitCmdFactory.New(ctx, e.GitRepo, cmd, opts...)
}
-func (e *repoExecutor) ExecAndWait(ctx context.Context, cmd git.Command, opts ...git.CmdOpt) error {
+func (e *RepoExecutor) ExecAndWait(ctx context.Context, cmd git.Command, opts ...git.CmdOpt) error {
command, err := e.Exec(ctx, cmd, opts...)
if err != nil {
return err
@@ -47,11 +47,11 @@ func (e *repoExecutor) ExecAndWait(ctx context.Context, cmd git.Command, opts ..
return command.Wait()
}
-func (e *repoExecutor) GitVersion(ctx context.Context) (git.Version, error) {
+func (e *RepoExecutor) GitVersion(ctx context.Context) (git.Version, error) {
return git.Version{}, nil
}
-func (e *repoExecutor) ObjectHash(ctx context.Context) (git.ObjectHash, error) {
+func (e *RepoExecutor) ObjectHash(ctx context.Context) (git.ObjectHash, error) {
return gittest.DefaultObjectHash, nil
}
@@ -62,12 +62,12 @@ func setupObjectReader(t *testing.T, ctx context.Context) (config.Cfg, ObjectCon
repo, repoPath := gittest.CreateRepository(t, ctx, cfg, gittest.CreateRepositoryConfig{
SkipCreationViaService: true,
})
- repoExecutor := newRepoExecutor(t, cfg, repo)
+ RepoExecutor := NewRepoExecutor(t, cfg, repo)
cache := newCache(1*time.Hour, 1000, helper.NewTimerTicker(defaultEvictionInterval))
t.Cleanup(cache.Stop)
- objectReader, cancel, err := cache.ObjectReader(ctx, repoExecutor)
+ objectReader, cancel, err := cache.ObjectReader(ctx, RepoExecutor)
require.NoError(t, err)
t.Cleanup(cancel)
@@ -109,3 +109,19 @@ func (o *staticObject) Read(p []byte) (int, error) {
func (o *staticObject) WriteTo(w io.Writer) (int64, error) {
return io.Copy(w, o.reader)
}
+
+func (q *requestQueue) IsDirty() bool {
+ return q.isDirty()
+}
+
+func (q *requestQueue) Close() {
+ q.close()
+}
+
+//var NewInterceptedInfoQueue = newInterceptedInfoQueue
+
+var NewObjectContentReader = newObjectContentReader
+
+func (o *objectContentReader) Close() {
+ o.close()
+}