From dfb3834a019f45160dfbe2a2af6a5208933bb87d Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Fri, 6 Mar 2026 00:43:51 +0800 Subject: repository: Delete passthrough convenience functions --- repository/read_stored_passthrough.go | 43 ---------- repository/read_stored_passthrough_test.go | 124 ----------------------------- repository/traversal_helpers_test.go | 2 +- repository/write_loose_test.go | 4 +- 4 files changed, 3 insertions(+), 170 deletions(-) delete mode 100644 repository/read_stored_passthrough.go delete mode 100644 repository/read_stored_passthrough_test.go diff --git a/repository/read_stored_passthrough.go b/repository/read_stored_passthrough.go deleted file mode 100644 index 29cb8565..00000000 --- a/repository/read_stored_passthrough.go +++ /dev/null @@ -1,43 +0,0 @@ -package repository - -import ( - "io" - - "codeberg.org/lindenii/furgit/objectid" - "codeberg.org/lindenii/furgit/objecttype" -) - -// ReadStoredHeader reads an object's type and declared content length. -func (repo *Repository) ReadStoredHeader(id objectid.ObjectID) (objecttype.Type, int64, error) { - return repo.objects.ReadHeader(id) -} - -// ReadStoredSize reads an object's declared content length. -func (repo *Repository) ReadStoredSize(id objectid.ObjectID) (int64, error) { - return repo.objects.ReadSize(id) -} - -// ReadStoredBytesFull reads a full serialized object as "type size\0content". -func (repo *Repository) ReadStoredBytesFull(id objectid.ObjectID) ([]byte, error) { - return repo.objects.ReadBytesFull(id) -} - -// ReadStoredBytesContent reads an object's type and content bytes. -func (repo *Repository) ReadStoredBytesContent(id objectid.ObjectID) (objecttype.Type, []byte, error) { - return repo.objects.ReadBytesContent(id) -} - -// ReadStoredReaderFull reads a full serialized object stream. -// -// Caller must close the returned reader. -func (repo *Repository) ReadStoredReaderFull(id objectid.ObjectID) (io.ReadCloser, error) { - return repo.objects.ReadReaderFull(id) -} - -// ReadStoredReaderContent reads an object's type, declared content length, and -// content stream. -// -// Caller must close the returned reader. -func (repo *Repository) ReadStoredReaderContent(id objectid.ObjectID) (objecttype.Type, int64, io.ReadCloser, error) { - return repo.objects.ReadReaderContent(id) -} diff --git a/repository/read_stored_passthrough_test.go b/repository/read_stored_passthrough_test.go deleted file mode 100644 index 676dd428..00000000 --- a/repository/read_stored_passthrough_test.go +++ /dev/null @@ -1,124 +0,0 @@ -package repository_test - -import ( - "bytes" - "io" - "os" - "testing" - - "codeberg.org/lindenii/furgit/internal/testgit" - "codeberg.org/lindenii/furgit/objectid" - "codeberg.org/lindenii/furgit/objecttype" - "codeberg.org/lindenii/furgit/repository" -) - -func TestReadStoredPassThroughs(t *testing.T) { - t.Parallel() - - testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper - repoHarness := testgit.NewRepo(t, testgit.RepoOptions{ - ObjectFormat: algo, - Bare: true, - RefFormat: "files", - }) - - _, _, commitID := repoHarness.MakeCommit(t, "pass-through") - - root, err := os.OpenRoot(repoHarness.Dir()) - if err != nil { - t.Fatalf("os.OpenRoot: %v", err) - } - - defer func() { _ = root.Close() }() - - repo, err := repository.Open(root) - if err != nil { - t.Fatalf("repository.Open: %v", err) - } - - defer func() { _ = repo.Close() }() - - headerTy, headerSize, err := repo.ReadStoredHeader(commitID) - if err != nil { - t.Fatalf("ReadStoredHeader: %v", err) - } - - if headerTy != objecttype.TypeCommit { - t.Fatalf("ReadStoredHeader type = %v, want %v", headerTy, objecttype.TypeCommit) - } - - if headerSize <= 0 { - t.Fatalf("ReadStoredHeader size = %d, want > 0", headerSize) - } - - full, err := repo.ReadStoredBytesFull(commitID) - if err != nil { - t.Fatalf("ReadStoredBytesFull: %v", err) - } - - if len(full) == 0 { - t.Fatalf("ReadStoredBytesFull returned empty payload") - } - - contentTy, content, err := repo.ReadStoredBytesContent(commitID) - if err != nil { - t.Fatalf("ReadStoredBytesContent: %v", err) - } - - if contentTy != objecttype.TypeCommit { - t.Fatalf("ReadStoredBytesContent type = %v, want %v", contentTy, objecttype.TypeCommit) - } - - if len(content) == 0 { - t.Fatalf("ReadStoredBytesContent returned empty content") - } - - fullReader, err := repo.ReadStoredReaderFull(commitID) - if err != nil { - t.Fatalf("ReadStoredReaderFull: %v", err) - } - - fullReaderBytes, readErr := io.ReadAll(fullReader) - closeErr := fullReader.Close() - - if readErr != nil { - t.Fatalf("ReadStoredReaderFull read: %v", readErr) - } - - if closeErr != nil { - t.Fatalf("ReadStoredReaderFull close: %v", closeErr) - } - - if !bytes.Equal(fullReaderBytes, full) { - t.Fatalf("ReadStoredReaderFull bytes mismatch against ReadStoredBytesFull") - } - - readerTy, readerSize, contentReader, err := repo.ReadStoredReaderContent(commitID) - if err != nil { - t.Fatalf("ReadStoredReaderContent: %v", err) - } - - if readerTy != objecttype.TypeCommit { - t.Fatalf("ReadStoredReaderContent type = %v, want %v", readerTy, objecttype.TypeCommit) - } - - if readerSize != int64(len(content)) { - t.Fatalf("ReadStoredReaderContent size = %d, want %d", readerSize, len(content)) - } - - readerContentBytes, readErr := io.ReadAll(contentReader) - closeErr = contentReader.Close() - - if readErr != nil { - t.Fatalf("ReadStoredReaderContent read: %v", readErr) - } - - if closeErr != nil { - t.Fatalf("ReadStoredReaderContent close: %v", closeErr) - } - - if !bytes.Equal(readerContentBytes, content) { - t.Fatalf("ReadStoredReaderContent bytes mismatch against ReadStoredBytesContent") - } - }) -} diff --git a/repository/traversal_helpers_test.go b/repository/traversal_helpers_test.go index e2d662e6..143d3b62 100644 --- a/repository/traversal_helpers_test.go +++ b/repository/traversal_helpers_test.go @@ -21,7 +21,7 @@ func traverseTreeIter(repo *repository.Repository, root objectid.ObjectID) (int, id := frame.id if !frame.isTree { - _, err := repo.ReadStoredSize(id) + _, err := repo.Objects().ReadSize(id) if err != nil { return 0, err } diff --git a/repository/write_loose_test.go b/repository/write_loose_test.go index ab732df4..c9a36961 100644 --- a/repository/write_loose_test.go +++ b/repository/write_loose_test.go @@ -47,7 +47,7 @@ func TestWriteLooseBytesContent(t *testing.T) { t.Fatalf("WriteLooseBytesContent id = %s, want %s", gotID, wantID) } - ty, gotContent, err := repo.ReadStoredBytesContent(gotID) + ty, gotContent, err := repo.Objects().ReadBytesContent(gotID) if err != nil { t.Fatalf("ReadStoredBytesContent: %v", err) } @@ -125,7 +125,7 @@ func TestWriteLooseFull(t *testing.T) { defer func() { _ = repo.Close() }() - raw, err := repo.ReadStoredBytesFull(commitID) + raw, err := repo.Objects().ReadBytesFull(commitID) if err != nil { t.Fatalf("ReadStoredBytesFull: %v", err) } -- cgit v1.3.1-10-gc9f91