Commit d76abd44 authored by Jakub Sztandera's avatar Jakub Sztandera

test: add metadata node testcase to dagreader.go

License: MIT
Signed-off-by: default avatarJakub Sztandera <kubuxu@protonmail.ch>
parent 600437d8
......@@ -3,6 +3,7 @@ package io
import (
"io/ioutil"
"os"
"strings"
"testing"
mdag "github.com/ipfs/go-ipfs/merkledag"
......@@ -154,7 +155,46 @@ func TestBadPBData(t *testing.T) {
if err == nil {
t.Fatal("excepted error, got nil")
}
}
func TestMetadataNode(t *testing.T) {
dserv := testu.GetDAGServ()
rdata, rnode := testu.GetRandomNode(t, dserv, 512)
_, err := dserv.Add(rnode)
if err != nil {
t.Fatal(err)
}
ctx, closer := context.WithCancel(context.Background())
defer closer()
data, err := unixfs.BytesForMetadata(&unixfs.Metadata{"text", 125})
if err != nil {
t.Fatal(err)
}
node := mdag.NodeWithData(data)
_, err = NewDagReader(ctx, node, dserv)
if err == nil {
t.Fatal("expected an error")
}
if !strings.Contains(err.Error(), "incorrectly formatted") {
t.Fatal("expected different error")
}
node.AddNodeLink("", rnode)
reader, err := NewDagReader(ctx, node, dserv)
if err != nil {
t.Fatal(err)
}
readdata, err := ioutil.ReadAll(reader)
if err != nil {
t.Fatal(err)
}
if err := testu.ArrComp(rdata, readdata); err != nil {
t.Fatal(err)
}
}
func readByte(t testing.TB, reader *DagReader) byte {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment