test: add invialid protobuf data testcase to dagreader

License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
This commit is contained in:
Jakub Sztandera 2016-08-21 00:52:02 +02:00
parent 8ccaf5bbfa
commit b699e71c0b
No known key found for this signature in database
GPG Key ID: 9A9AF56F8B3879BA
2 changed files with 14 additions and 1 deletions

View File

@ -131,7 +131,7 @@ func (dr *DagReader) precalcNextBuf(ctx context.Context) error {
dr.buf = NewRSNCFromBytes(pb.GetData())
return nil
case ftpb.Data_Metadata:
return errors.New("Shouldnt have had metadata object inside file")
return errors.New("shouldnt have had metadata object inside file")
case ftpb.Data_Symlink:
return errors.New("shouldnt have had symlink inside file")
default:

View File

@ -144,6 +144,19 @@ func TestTypeFailures(t *testing.T) {
}
}
func TestBadPBData(t *testing.T) {
dserv := testu.GetDAGServ()
ctx, closer := context.WithCancel(context.Background())
defer closer()
node := mdag.NodeWithData([]byte{42})
_, err := NewDagReader(ctx, node, dserv)
if err == nil {
t.Fatal("excepted error, got nil")
}
}
func readByte(t testing.TB, reader *DagReader) byte {
out := make([]byte, 1)
c, err := reader.Read(out)