diff options
Diffstat (limited to 'reachability')
| -rw-r--r-- | reachability/helpers.go | 2 | ||||
| -rw-r--r-- | reachability/reachability.go | 2 | ||||
| -rw-r--r-- | reachability/unit_test.go | 36 | ||||
| -rw-r--r-- | reachability/walk_expand_commits.go | 7 | ||||
| -rw-r--r-- | reachability/walk_expand_objects.go | 16 | ||||
| -rw-r--r-- | reachability/walk_verify.go | 4 |
6 files changed, 35 insertions, 32 deletions
diff --git a/reachability/helpers.go b/reachability/helpers.go index 47fe313e..8d9eea6a 100644 --- a/reachability/helpers.go +++ b/reachability/helpers.go @@ -6,7 +6,7 @@ import ( giterrors "codeberg.org/lindenii/furgit/errors" objectid "codeberg.org/lindenii/furgit/object/id" - "codeberg.org/lindenii/furgit/object/storer" + objectstorer "codeberg.org/lindenii/furgit/object/storer" objecttype "codeberg.org/lindenii/furgit/object/type" ) diff --git a/reachability/reachability.go b/reachability/reachability.go index 54fc6e44..77a844a7 100644 --- a/reachability/reachability.go +++ b/reachability/reachability.go @@ -3,7 +3,7 @@ package reachability import ( commitgraphread "codeberg.org/lindenii/furgit/commitgraph/read" - "codeberg.org/lindenii/furgit/object/storer" + objectstorer "codeberg.org/lindenii/furgit/object/storer" ) // Reachability provides graph traversal over objects in one object store. diff --git a/reachability/unit_test.go b/reachability/unit_test.go index fad0280b..db9a5c26 100644 --- a/reachability/unit_test.go +++ b/reachability/unit_test.go @@ -9,9 +9,9 @@ import ( giterrors "codeberg.org/lindenii/furgit/errors" "codeberg.org/lindenii/furgit/internal/testgit" - "codeberg.org/lindenii/furgit/object" objectid "codeberg.org/lindenii/furgit/object/id" "codeberg.org/lindenii/furgit/object/storer/memory" + "codeberg.org/lindenii/furgit/object/tree" objecttype "codeberg.org/lindenii/furgit/object/type" "codeberg.org/lindenii/furgit/reachability" ) @@ -84,8 +84,8 @@ func TestWalkDomainCommitsIncludesTagNodes(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := newCountingMemStore(algo) blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{{ - Mode: object.FileModeRegular, + tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) @@ -119,8 +119,8 @@ func TestWalkExcludesHavesCompletely(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := newCountingMemStore(algo) blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{{ - Mode: object.FileModeRegular, + tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) @@ -148,8 +148,8 @@ func TestWalkDomainCommitsRejectsNonCommitRootAfterPeel(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := newCountingMemStore(algo) blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{{ - Mode: object.FileModeRegular, + tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) @@ -181,8 +181,8 @@ func TestWalkDomainCommitsHaveTagStopsTraversal(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := newCountingMemStore(algo) blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{{ - Mode: object.FileModeRegular, + tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) @@ -224,15 +224,15 @@ func TestWalkDomainObjectsRecursesTreesAndSkipsBlobContentReads(t *testing.T) { blob2 := store.AddObject(objecttype.TypeBlob, []byte("b2\n")) gitlinkTarget := store.Algorithm().Sum([]byte("external-submodule")) - subtree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{{ - Mode: object.FileModeRegular, + subtree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + Mode: tree.FileModeRegular, Name: []byte("nested"), ID: blob2, }}})) - rootTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{ - {Mode: object.FileModeRegular, Name: []byte("a"), ID: blob1}, - {Mode: object.FileModeDir, Name: []byte("dir"), ID: subtree}, - {Mode: object.FileModeGitlink, Name: []byte("submodule"), ID: gitlinkTarget}, + rootTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{ + {Mode: tree.FileModeRegular, Name: []byte("a"), ID: blob1}, + {Mode: tree.FileModeDir, Name: []byte("dir"), ID: subtree}, + {Mode: tree.FileModeGitlink, Name: []byte("submodule"), ID: gitlinkTarget}, }})) commit := store.AddObject(objecttype.TypeCommit, commitBody(rootTree)) @@ -265,8 +265,8 @@ func TestCheckConnectedReturnsConcreteMissingObject(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := newCountingMemStore(algo) blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &object.Tree{Entries: []object.TreeEntry{{ - Mode: object.FileModeRegular, + tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) @@ -307,7 +307,7 @@ func TestWalkInvalidDomainReturnsPlainError(t *testing.T) { }) } -func mustSerializeTree(tb testing.TB, tree *object.Tree) []byte { +func mustSerializeTree(tb testing.TB, tree *tree.Tree) []byte { tb.Helper() body, err := tree.SerializeWithoutHeader() diff --git a/reachability/walk_expand_commits.go b/reachability/walk_expand_commits.go index f02da944..8cb93279 100644 --- a/reachability/walk_expand_commits.go +++ b/reachability/walk_expand_commits.go @@ -4,7 +4,8 @@ import ( "fmt" "codeberg.org/lindenii/furgit/errors" - "codeberg.org/lindenii/furgit/object" + objectcommit "codeberg.org/lindenii/furgit/object/commit" + objecttag "codeberg.org/lindenii/furgit/object/tag" objecttype "codeberg.org/lindenii/furgit/object/type" ) @@ -39,7 +40,7 @@ func (walk *Walk) expandCommits(item walkItem) ([]walkItem, error) { return nil, err } - commit, err := object.ParseCommit(content, item.id.Algorithm()) + commit, err := objectcommit.Parse(content, item.id.Algorithm()) if err != nil { return nil, err } @@ -56,7 +57,7 @@ func (walk *Walk) expandCommits(item walkItem) ([]walkItem, error) { return nil, err } - tag, err := object.ParseTag(content, item.id.Algorithm()) + tag, err := objecttag.Parse(content, item.id.Algorithm()) if err != nil { return nil, err } diff --git a/reachability/walk_expand_objects.go b/reachability/walk_expand_objects.go index 36e21745..9c5ed439 100644 --- a/reachability/walk_expand_objects.go +++ b/reachability/walk_expand_objects.go @@ -4,7 +4,9 @@ import ( "fmt" "codeberg.org/lindenii/furgit/errors" - "codeberg.org/lindenii/furgit/object" + objectcommit "codeberg.org/lindenii/furgit/object/commit" + objecttag "codeberg.org/lindenii/furgit/object/tag" + objecttree "codeberg.org/lindenii/furgit/object/tree" objecttype "codeberg.org/lindenii/furgit/object/type" ) @@ -27,7 +29,7 @@ func (walk *Walk) expandObjects(item walkItem) ([]walkItem, error) { return nil, err } - commit, err := object.ParseCommit(content, item.id.Algorithm()) + commit, err := objectcommit.Parse(content, item.id.Algorithm()) if err != nil { return nil, err } @@ -46,7 +48,7 @@ func (walk *Walk) expandObjects(item walkItem) ([]walkItem, error) { return nil, err } - tree, err := object.ParseTree(content, item.id.Algorithm()) + tree, err := objecttree.Parse(content, item.id.Algorithm()) if err != nil { return nil, err } @@ -54,11 +56,11 @@ func (walk *Walk) expandObjects(item walkItem) ([]walkItem, error) { next := make([]walkItem, 0, len(tree.Entries)) for _, entry := range tree.Entries { switch entry.Mode { - case object.FileModeGitlink: + case objecttree.FileModeGitlink: continue - case object.FileModeDir: + case objecttree.FileModeDir: next = append(next, walkItem{id: entry.ID, want: objecttype.TypeTree}) - case object.FileModeRegular, object.FileModeExecutable, object.FileModeSymlink: + case objecttree.FileModeRegular, objecttree.FileModeExecutable, objecttree.FileModeSymlink: next = append(next, walkItem{id: entry.ID, want: objecttype.TypeBlob}) } } @@ -70,7 +72,7 @@ func (walk *Walk) expandObjects(item walkItem) ([]walkItem, error) { return nil, err } - tag, err := object.ParseTag(content, item.id.Algorithm()) + tag, err := objecttag.Parse(content, item.id.Algorithm()) if err != nil { return nil, err } diff --git a/reachability/walk_verify.go b/reachability/walk_verify.go index 0469a8e2..c1409ba7 100644 --- a/reachability/walk_verify.go +++ b/reachability/walk_verify.go @@ -2,7 +2,7 @@ package reachability import ( "codeberg.org/lindenii/furgit/errors" - "codeberg.org/lindenii/furgit/object" + objectcommit "codeberg.org/lindenii/furgit/object/commit" objectid "codeberg.org/lindenii/furgit/object/id" objecttype "codeberg.org/lindenii/furgit/object/type" ) @@ -22,7 +22,7 @@ func (walk *Walk) validateCommitObject(id objectid.ObjectID) error { return err } - _, err = object.ParseCommit(content, id.Algorithm()) + _, err = objectcommit.Parse(content, id.Algorithm()) return err } |
