aboutsummaryrefslogtreecommitdiff
path: root/objectstore/loose
diff options
context:
space:
mode:
Diffstat (limited to 'objectstore/loose')
-rw-r--r--objectstore/loose/helpers_test.go13
-rw-r--r--objectstore/loose/read_test.go4
-rw-r--r--objectstore/loose/write_test.go12
3 files changed, 10 insertions, 19 deletions
diff --git a/objectstore/loose/helpers_test.go b/objectstore/loose/helpers_test.go
index 4b0bb60e..6cc50163 100644
--- a/objectstore/loose/helpers_test.go
+++ b/objectstore/loose/helpers_test.go
@@ -2,8 +2,6 @@ package loose_test
import (
"io"
- "os"
- "path/filepath"
"testing"
"codeberg.org/lindenii/furgit/internal/testgit"
@@ -13,17 +11,10 @@ import (
"codeberg.org/lindenii/furgit/objecttype"
)
-func openLooseStore(t *testing.T, repoPath string, algo objectid.Algorithm) *loose.Store {
+func openLooseStore(t *testing.T, testRepo *testgit.TestRepo, algo objectid.Algorithm) *loose.Store {
t.Helper()
- objectsPath := filepath.Join(repoPath, "objects")
-
- root, err := os.OpenRoot(objectsPath)
- if err != nil {
- t.Fatalf("OpenRoot(%q): %v", objectsPath, err)
- }
-
- t.Cleanup(func() { _ = root.Close() })
+ root := testRepo.OpenObjectsRoot(t)
store, err := loose.New(root, algo)
if err != nil {
diff --git a/objectstore/loose/read_test.go b/objectstore/loose/read_test.go
index 1efc1682..44e25910 100644
--- a/objectstore/loose/read_test.go
+++ b/objectstore/loose/read_test.go
@@ -21,7 +21,7 @@ func TestLooseStoreReadAgainstGit(t *testing.T) {
_, treeID, commitID := testRepo.MakeCommit(t, "subject\n\nbody")
tagID := testRepo.TagAnnotated(t, "v1", commitID, "tag message")
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
tests := []struct {
name string
@@ -108,7 +108,7 @@ func TestLooseStoreErrors(t *testing.T) {
t.Parallel()
testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
notFoundID, err := objectid.ParseHex(algo, strings.Repeat("0", algo.HexLen()))
if err != nil {
diff --git a/objectstore/loose/write_test.go b/objectstore/loose/write_test.go
index 5604c5b0..a7b12622 100644
--- a/objectstore/loose/write_test.go
+++ b/objectstore/loose/write_test.go
@@ -14,7 +14,7 @@ func TestLooseStoreWriteReaderContentAgainstGit(t *testing.T) {
t.Parallel()
testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
content := []byte("written-by-content-reader\n")
expectedHex := testRepo.RunInput(t, content, "hash-object", "-t", "blob", "--stdin")
@@ -54,7 +54,7 @@ func TestLooseStoreWriteReaderFullAgainstGit(t *testing.T) {
t.Parallel()
testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
body := []byte("full-reader-body\n")
@@ -91,7 +91,7 @@ func TestLooseStoreReaderValidationErrors(t *testing.T) {
t.Run("content overflow", func(t *testing.T) {
t.Parallel()
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
_, err := store.WriteReaderContent(objecttype.TypeBlob, 1, bytes.NewReader([]byte("hello")))
if err == nil {
@@ -102,7 +102,7 @@ func TestLooseStoreReaderValidationErrors(t *testing.T) {
t.Run("content short", func(t *testing.T) {
t.Parallel()
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
_, err := store.WriteReaderContent(objecttype.TypeBlob, 5, bytes.NewReader([]byte("x")))
if err == nil {
@@ -113,7 +113,7 @@ func TestLooseStoreReaderValidationErrors(t *testing.T) {
t.Run("full malformed header", func(t *testing.T) {
t.Parallel()
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
_, err := store.WriteReaderFull(bytes.NewReader([]byte("not-a-header")))
if err == nil {
@@ -124,7 +124,7 @@ func TestLooseStoreReaderValidationErrors(t *testing.T) {
t.Run("full size mismatch", func(t *testing.T) {
t.Parallel()
testRepo := testgit.NewRepo(t, testgit.RepoOptions{ObjectFormat: algo, Bare: true})
- store := openLooseStore(t, testRepo.Dir(), algo)
+ store := openLooseStore(t, testRepo, algo)
raw := []byte("blob 1\x00hello")