diff options
| author | 2026-03-30 13:21:59 +0000 | |
|---|---|---|
| committer | 2026-03-30 13:23:00 +0000 | |
| commit | f23c6a801eef4e7d115b568d7fa905596cd1b253 (patch) | |
| tree | bc5d3657a7f65ed2af98a071118d64e6446c69ca /commitquery | |
| parent | README: Decades? (diff) | |
| signature | No signature | |
object/store/memory: Remove AddObject, fix lints v0.1.158
Diffstat (limited to 'commitquery')
| -rw-r--r-- | commitquery/queries_is_ancestor_unit_test.go | 74 | ||||
| -rw-r--r-- | commitquery/queries_merge_bases_unit_test.go | 230 |
2 files changed, 252 insertions, 52 deletions
diff --git a/commitquery/queries_is_ancestor_unit_test.go b/commitquery/queries_is_ancestor_unit_test.go index bc8fb995..002c49ae 100644 --- a/commitquery/queries_is_ancestor_unit_test.go +++ b/commitquery/queries_is_ancestor_unit_test.go @@ -55,22 +55,54 @@ func TestIs(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeAncestorTree(t, &objecttree.Tree{Entries: []objecttree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeAncestorTree(t, &objecttree.Tree{Entries: []objecttree.TreeEntry{{ Mode: objecttree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) - c1 := store.AddObject(objecttype.TypeCommit, ancestorCommitBody(tree)) - c2 := store.AddObject(objecttype.TypeCommit, ancestorCommitBody(tree, c1)) - otherBlob := store.AddObject(objecttype.TypeBlob, []byte("other-blob\n")) - otherTree := store.AddObject(objecttype.TypeTree, mustSerializeAncestorTree(t, &objecttree.Tree{Entries: []objecttree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + c1, err := store.WriteBytesContent(objecttype.TypeCommit, ancestorCommitBody(tree)) + if err != nil { + t.Fatal(err) + } + + c2, err := store.WriteBytesContent(objecttype.TypeCommit, ancestorCommitBody(tree, c1)) + if err != nil { + t.Fatal(err) + } + + otherBlob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("other-blob\n")) + if err != nil { + t.Fatal(err) + } + + otherTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeAncestorTree(t, &objecttree.Tree{Entries: []objecttree.TreeEntry{{ Mode: objecttree.FileModeRegular, Name: []byte("g"), ID: otherBlob, }}})) - c3 := store.AddObject(objecttype.TypeCommit, ancestorCommitBody(otherTree)) - tag := store.AddObject(objecttype.TypeTag, ancestorTagBody(c2, objecttype.TypeCommit)) + if err != nil { + t.Fatal(err) + } + + c3, err := store.WriteBytesContent(objecttype.TypeCommit, ancestorCommitBody(otherTree)) + if err != nil { + t.Fatal(err) + } + + tag, err := store.WriteBytesContent(objecttype.TypeTag, ancestorTagBody(c2, objecttype.TypeCommit)) + if err != nil { + t.Fatal(err) + } ok, err := commitquery.New(fetch.New(store), nil).IsAncestor(c1, tag) if err != nil { @@ -97,16 +129,32 @@ func TestIsRejectsNonCommitAfterPeel(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeAncestorTree(t, &objecttree.Tree{Entries: []objecttree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeAncestorTree(t, &objecttree.Tree{Entries: []objecttree.TreeEntry{{ Mode: objecttree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) - commit := store.AddObject(objecttype.TypeCommit, ancestorCommitBody(tree)) - tagToTree := store.AddObject(objecttype.TypeTag, ancestorTagBody(tree, objecttype.TypeTree)) + if err != nil { + t.Fatal(err) + } + + commit, err := store.WriteBytesContent(objecttype.TypeCommit, ancestorCommitBody(tree)) + if err != nil { + t.Fatal(err) + } + + tagToTree, err := store.WriteBytesContent(objecttype.TypeTag, ancestorTagBody(tree, objecttype.TypeTree)) + if err != nil { + t.Fatal(err) + } - _, err := commitquery.New(fetch.New(store), nil).IsAncestor(commit, tagToTree) + _, err = commitquery.New(fetch.New(store), nil).IsAncestor(commit, tagToTree) if err == nil { t.Fatal("expected error") } diff --git a/commitquery/queries_merge_bases_unit_test.go b/commitquery/queries_merge_bases_unit_test.go index 596a5edc..3e302536 100644 --- a/commitquery/queries_merge_bases_unit_test.go +++ b/commitquery/queries_merge_bases_unit_test.go @@ -74,15 +74,35 @@ func TestQueryLinearHistory(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) - base := store.AddObject(objecttype.TypeCommit, commitBody(tree)) - left := store.AddObject(objecttype.TypeCommit, commitBody(tree, base)) - right := store.AddObject(objecttype.TypeCommit, commitBody(tree, left)) + if err != nil { + t.Fatal(err) + } + + base, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree)) + if err != nil { + t.Fatal(err) + } + + left, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree, base)) + if err != nil { + t.Fatal(err) + } + + right, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree, left)) + if err != nil { + t.Fatal(err) + } query := commitquery.New(fetch.New(store), nil) @@ -115,21 +135,49 @@ func TestQueryPeelsAnnotatedTags(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - leftTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + leftTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("left"), ID: blob, }}})) - rightTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + rightTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("right"), ID: blob, }}})) - base := store.AddObject(objecttype.TypeCommit, commitBody(leftTree)) - left := store.AddObject(objecttype.TypeCommit, commitBody(leftTree, base)) - right := store.AddObject(objecttype.TypeCommit, commitBody(rightTree, base)) - tag := store.AddObject(objecttype.TypeTag, tagBody(right, objecttype.TypeCommit)) + if err != nil { + t.Fatal(err) + } + + base, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(leftTree)) + if err != nil { + t.Fatal(err) + } + + left, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(leftTree, base)) + if err != nil { + t.Fatal(err) + } + + right, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(rightTree, base)) + if err != nil { + t.Fatal(err) + } + + tag, err := store.WriteBytesContent(objecttype.TypeTag, tagBody(right, objecttype.TypeCommit)) + if err != nil { + t.Fatal(err) + } query := commitquery.New(fetch.New(store), nil) @@ -149,37 +197,81 @@ func TestQueryCrissCrossReturnsAllBestCommonAncestors(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - rootTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + rootTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("root"), ID: blob, }}})) - base1Tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + base1Tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("base1"), ID: blob, }}})) - base2Tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + base2Tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("base2"), ID: blob, }}})) - leftTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + leftTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("left"), ID: blob, }}})) - rightTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + rightTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("right"), ID: blob, }}})) - root := store.AddObject(objecttype.TypeCommit, commitBody(rootTree)) - base1 := store.AddObject(objecttype.TypeCommit, commitBody(base1Tree, root)) - base2 := store.AddObject(objecttype.TypeCommit, commitBody(base2Tree, root)) - left := store.AddObject(objecttype.TypeCommit, commitBody(leftTree, base1, base2)) - right := store.AddObject(objecttype.TypeCommit, commitBody(rightTree, base2, base1)) + if err != nil { + t.Fatal(err) + } + + root, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(rootTree)) + if err != nil { + t.Fatal(err) + } + + base1, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(base1Tree, root)) + if err != nil { + t.Fatal(err) + } + + base2, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(base2Tree, root)) + if err != nil { + t.Fatal(err) + } + + left, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(leftTree, base1, base2)) + if err != nil { + t.Fatal(err) + } + + right, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(rightTree, base2, base1)) + if err != nil { + t.Fatal(err) + } query := commitquery.New(fetch.New(store), nil) @@ -215,20 +307,44 @@ func TestQueryReturnsNoResultWhenNoCommonAncestorExists(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - leftBlob := store.AddObject(objecttype.TypeBlob, []byte("left\n")) - leftTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + + leftBlob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("left\n")) + if err != nil { + t.Fatal(err) + } + + leftTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("left"), ID: leftBlob, }}})) - rightBlob := store.AddObject(objecttype.TypeBlob, []byte("right\n")) - rightTree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + if err != nil { + t.Fatal(err) + } + + rightBlob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("right\n")) + if err != nil { + t.Fatal(err) + } + + rightTree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("right"), ID: rightBlob, }}})) - left := store.AddObject(objecttype.TypeCommit, commitBody(leftTree)) - right := store.AddObject(objecttype.TypeCommit, commitBody(rightTree)) + if err != nil { + t.Fatal(err) + } + + left, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(leftTree)) + if err != nil { + t.Fatal(err) + } + + right, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(rightTree)) + if err != nil { + t.Fatal(err) + } query := commitquery.New(fetch.New(store), nil) @@ -257,18 +373,34 @@ func TestQueryRejectsNonCommitAfterPeel(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) - commit := store.AddObject(objecttype.TypeCommit, commitBody(tree)) - tagToTree := store.AddObject(objecttype.TypeTag, tagBody(tree, objecttype.TypeTree)) + if err != nil { + t.Fatal(err) + } + + commit, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree)) + if err != nil { + t.Fatal(err) + } + + tagToTree, err := store.WriteBytesContent(objecttype.TypeTag, tagBody(tree, objecttype.TypeTree)) + if err != nil { + t.Fatal(err) + } query := commitquery.New(fetch.New(store), nil) - _, err := query.MergeBases(commit, tagToTree) + _, err = query.MergeBases(commit, tagToTree) if err == nil { t.Fatal("expected error") } @@ -289,15 +421,35 @@ func TestQueryAllIsRepeatable(t *testing.T) { testgit.ForEachAlgorithm(t, func(t *testing.T, algo objectid.Algorithm) { //nolint:thelper store := memory.New(algo) - blob := store.AddObject(objecttype.TypeBlob, []byte("blob\n")) - tree := store.AddObject(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ + + blob, err := store.WriteBytesContent(objecttype.TypeBlob, []byte("blob\n")) + if err != nil { + t.Fatal(err) + } + + tree, err := store.WriteBytesContent(objecttype.TypeTree, mustSerializeTree(t, &tree.Tree{Entries: []tree.TreeEntry{{ Mode: tree.FileModeRegular, Name: []byte("f"), ID: blob, }}})) - base := store.AddObject(objecttype.TypeCommit, commitBody(tree)) - left := store.AddObject(objecttype.TypeCommit, commitBody(tree, base)) - right := store.AddObject(objecttype.TypeCommit, commitBody(tree, left)) + if err != nil { + t.Fatal(err) + } + + base, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree)) + if err != nil { + t.Fatal(err) + } + + left, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree, base)) + if err != nil { + t.Fatal(err) + } + + right, err := store.WriteBytesContent(objecttype.TypeCommit, commitBody(tree, left)) + if err != nil { + t.Fatal(err) + } query := commitquery.New(fetch.New(store), nil) |
