diff options
| author | 2026-03-28 16:33:14 +0000 | |
|---|---|---|
| committer | 2026-03-28 16:33:14 +0000 | |
| commit | 060e5b7063ec282627dde96ac028f0d40cf05c60 (patch) | |
| tree | 6a80e635a6c2f2955dfd97ab104103d6acdcf930 /object/tree/parse_test.go | |
| parent | object/store/{loose,packed}: TIghten language around Adler-32 (diff) | |
| signature | No signature | |
object/tree: Update docs
Diffstat (limited to 'object/tree/parse_test.go')
| -rw-r--r-- | object/tree/parse_test.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/object/tree/parse_test.go b/object/tree/parse_test.go index 6f00220e..bf1c2fd0 100644 --- a/object/tree/parse_test.go +++ b/object/tree/parse_test.go @@ -74,3 +74,34 @@ func TestTreeParseFromGit(t *testing.T) { } }) } + +func TestTreeInsertEntryCopiesName(t *testing.T) { + t.Parallel() + + var tr tree.Tree + name := []byte("alpha") + entry := tree.TreeEntry{ + Mode: tree.FileModeRegular, + Name: name, + ID: objectid.ObjectID{}, + } + + if err := tr.InsertEntry(entry); err != nil { + t.Fatalf("InsertEntry: %v", err) + } + + name[0] = 'b' + + got := tr.Entry([]byte("alpha")) + if got == nil { + t.Fatalf("Entry(alpha) returned nil") + } + + if !bytes.Equal(got.Name, []byte("alpha")) { + t.Fatalf("stored name = %q, want %q", got.Name, []byte("alpha")) + } + + if tr.Entry([]byte("blpha")) != nil { + t.Fatalf("mutating caller name should not affect stored entry") + } +} |
