mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-25 04:17:44 +08:00
add basic test for blocks package #59
This commit is contained in:
parent
3261ce2dc8
commit
8a21af092a
@ -5,8 +5,7 @@ import (
|
||||
u "github.com/jbenet/go-ipfs/util"
|
||||
)
|
||||
|
||||
// Block is the ipfs blocks service. It is the way
|
||||
// to retrieve blocks by the higher level ipfs modules
|
||||
// Block is a singular block of data in ipfs
|
||||
type Block struct {
|
||||
Multihash mh.Multihash
|
||||
Data []byte
|
||||
|
||||
@ -17,7 +17,6 @@ type DagReader struct {
|
||||
node *Node
|
||||
position int
|
||||
buf *bytes.Buffer
|
||||
thisData []byte
|
||||
}
|
||||
|
||||
func NewDagReader(n *Node, serv *DAGService) (io.Reader, error) {
|
||||
@ -31,10 +30,9 @@ func NewDagReader(n *Node, serv *DAGService) (io.Reader, error) {
|
||||
return nil, ErrIsDir
|
||||
case PBData_File:
|
||||
return &DagReader{
|
||||
node: n,
|
||||
thisData: pb.GetData(),
|
||||
serv: serv,
|
||||
buf: bytes.NewBuffer(pb.GetData()),
|
||||
node: n,
|
||||
serv: serv,
|
||||
buf: bytes.NewBuffer(pb.GetData()),
|
||||
}, nil
|
||||
case PBData_Raw:
|
||||
return bytes.NewBuffer(pb.GetData()), nil
|
||||
@ -63,12 +61,12 @@ func (dr *DagReader) precalcNextBuf() error {
|
||||
}
|
||||
dr.position++
|
||||
|
||||
// TODO: dont assume a single layer of indirection
|
||||
switch pb.GetType() {
|
||||
case PBData_Directory:
|
||||
panic("Why is there a directory under a file?")
|
||||
case PBData_File:
|
||||
//TODO: maybe have a PBData_Block type for indirect blocks?
|
||||
//TODO: this *should* work, needs testing first
|
||||
//return NewDagReader(nxt, dr.serv)
|
||||
panic("Not yet handling different layers of indirection!")
|
||||
case PBData_Raw:
|
||||
dr.buf = bytes.NewBuffer(pb.GetData())
|
||||
|
||||
Loading…
Reference in New Issue
Block a user