git/githistory: add TestRewriterVisitsPackedObjects test
This commit is contained in:
parent
500234eb8a
commit
28e2158bb9
@ -1,6 +1,7 @@
|
|||||||
package githistory
|
package githistory
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
"encoding/hex"
|
"encoding/hex"
|
||||||
"io"
|
"io"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
@ -121,6 +122,32 @@ func TestRewriterRewritesOctopusMerges(t *testing.T) {
|
|||||||
AssertCommitParent(t, db, "ca447959bdcd20253d69b227bcc7c2e1d3126d5c", "9237567f379b3c83ddf53ad9a2ae3755afb62a09")
|
AssertCommitParent(t, db, "ca447959bdcd20253d69b227bcc7c2e1d3126d5c", "9237567f379b3c83ddf53ad9a2ae3755afb62a09")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestRewriterVisitsPackedObjects(t *testing.T) {
|
||||||
|
db := DatabaseFromFixture(t, "packed-objects.git")
|
||||||
|
r := NewRewriter(db)
|
||||||
|
|
||||||
|
var contents []byte
|
||||||
|
|
||||||
|
_, err := r.Rewrite(&RewriteOptions{Include: []string{"refs/heads/master"},
|
||||||
|
BlobFn: func(path string, b *odb.Blob) (*odb.Blob, error) {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
contents, err = ioutil.ReadAll(b.Contents)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return &odb.Blob{
|
||||||
|
Contents: bytes.NewReader(contents),
|
||||||
|
Size: int64(len(contents)),
|
||||||
|
}, nil
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.Equal(t, string(contents), "Hello, world!\n")
|
||||||
|
}
|
||||||
|
|
||||||
func TestRewriterDoesntVisitUnchangedSubtrees(t *testing.T) {
|
func TestRewriterDoesntVisitUnchangedSubtrees(t *testing.T) {
|
||||||
db := DatabaseFromFixture(t, "repeated-subtrees.git")
|
db := DatabaseFromFixture(t, "repeated-subtrees.git")
|
||||||
r := NewRewriter(db)
|
r := NewRewriter(db)
|
||||||
|
Loading…
Reference in New Issue
Block a user