fe963ae0a3
This removes the Export method in nar-bridge, and updates all users to the version now in storev1pb. It moves the roundtrip test to the importer crate, and some of the utility functions into a separate util_test.go file. Change-Id: I81d9e0b35dfd78ef1042bed307281eecd2aaa2a8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9603 Reviewed-by: Brian McGee <brian@bmcgee.ie> Tested-by: BuildkiteCI
34 lines
714 B
Go
34 lines
714 B
Go
package importer_test
|
|
|
|
import (
|
|
"io"
|
|
"testing"
|
|
|
|
castorev1pb "code.tvl.fyi/tvix/castore/protos"
|
|
"github.com/google/go-cmp/cmp"
|
|
"google.golang.org/protobuf/testing/protocmp"
|
|
"lukechampine.com/blake3"
|
|
)
|
|
|
|
func requireProtoEq(t *testing.T, expected interface{}, actual interface{}) {
|
|
if diff := cmp.Diff(expected, actual, protocmp.Transform()); diff != "" {
|
|
t.Errorf("unexpected difference:\n%v", diff)
|
|
}
|
|
}
|
|
|
|
func mustDirectoryDigest(d *castorev1pb.Directory) []byte {
|
|
dgst, err := d.Digest()
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return dgst
|
|
}
|
|
|
|
func mustBlobDigest(r io.Reader) []byte {
|
|
hasher := blake3.New(32, nil)
|
|
_, err := io.Copy(hasher, r)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return hasher.Sum([]byte{})
|
|
}
|