blob: 92d2046cf462c9ec52b325ea4d139d599c951991 (
plain) (
tree)
|
|
package idxfile_test
import (
"bytes"
"io/ioutil"
"gopkg.in/src-d/go-git.v4/plumbing/format/idxfile"
"gopkg.in/src-d/go-git.v4/plumbing/format/packfile"
. "gopkg.in/check.v1"
"gopkg.in/src-d/go-git-fixtures.v3"
)
type IndexSuite struct {
fixtures.Suite
}
var _ = Suite(&IndexSuite{})
func (s *IndexSuite) TestIndexWriter(c *C) {
f := fixtures.Basic().One()
scanner := packfile.NewScanner(f.Packfile())
obs := new(idxfile.Writer)
parser := packfile.NewParser(scanner, obs)
_, err := parser.Parse()
c.Assert(err, IsNil)
idx, err := obs.CreateIndex()
c.Assert(err, IsNil)
idxFile := f.Idx()
expected, err := ioutil.ReadAll(idxFile)
c.Assert(err, IsNil)
idxFile.Close()
buf := new(bytes.Buffer)
encoder := idxfile.NewEncoder(buf)
n, err := encoder.Encode(idx)
c.Assert(err, IsNil)
c.Assert(n, Equals, len(expected))
c.Assert(buf.Bytes(), DeepEquals, expected)
}
|