diff options
| author | Carlos Martín Nieto <[email protected]> | 2016-08-27 21:07:44 +0200 |
|---|---|---|
| committer | Carlos Martín Nieto <[email protected]> | 2016-08-27 21:07:44 +0200 |
| commit | aadd0c2035d12b6469c53b7c444ea6fe1006c2c0 (patch) | |
| tree | fd56478f8014dd41dcba043dc0677930d14c4b06 /blob_test.go | |
| parent | 37d3c2d9ad4c4e970cac02faec8ad184412c34e6 (diff) | |
| parent | 241aa34d83b210ceaab7029c46e05794f2ea9797 (diff) | |
Merge remote-tracking branch 'upstream/master' into next
Diffstat (limited to 'blob_test.go')
| -rw-r--r-- | blob_test.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/blob_test.go b/blob_test.go index 2b5ec4f..815ab3d 100644 --- a/blob_test.go +++ b/blob_test.go @@ -1,10 +1,23 @@ package git import ( + "bytes" "testing" ) +type bufWrapper struct { + buf [64]byte + pointer []byte +} + +func doublePointerBytes() []byte { + o := &bufWrapper{} + o.pointer = o.buf[0:10] + return o.pointer[0:1] +} + func TestCreateBlobFromBuffer(t *testing.T) { + t.Parallel() repo := createTestRepo(t) defer cleanupTestRepo(t, repo) @@ -14,4 +27,16 @@ func TestCreateBlobFromBuffer(t *testing.T) { if id.String() != "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391" { t.Fatal("Empty buffer did not deliver empty blob id") } + + for _, data := range []([]byte){[]byte("hello there"), doublePointerBytes()} { + id, err = repo.CreateBlobFromBuffer(data) + checkFatal(t, err) + + blob, err := repo.LookupBlob(id) + checkFatal(t, err) + if !bytes.Equal(blob.Contents(), data) { + t.Fatal("Loaded bytes don't match original bytes:", + blob.Contents(), "!=", data) + } + } } |
