github.com/scottcagno/storage@v1.8.0/pkg/bio/reader_test.go (about) 1 package bio 2 3 import ( 4 "bytes" 5 "fmt" 6 "testing" 7 ) 8 9 var ( 10 b *bytes.Buffer 11 w *Writer 12 ) 13 14 func setup(t *testing.T) { 15 b = new(bytes.Buffer) 16 w = NewWriter(b) 17 n, err := w.Write([]byte("entry 1: this is just a test. this is entry number one.")) 18 if err != nil { 19 t.Error(err) 20 } 21 n, err = w.Write([]byte("entry 2: this is entry two")) 22 if err != nil { 23 t.Error(err) 24 } 25 //fmt.Printf("wrote %d bytes.\n", n) 26 //fmt.Printf("%s", Info(w, b)) 27 _ = n 28 } 29 30 func TestReader_NewReader(t *testing.T) { 31 //setup(t) 32 r := NewReader(new(bytes.Buffer)) 33 fmt.Printf("%s\n", r) 34 } 35 36 func TestReader_Read(t *testing.T) { 37 setup(t) 38 r := NewReader(b) 39 buf := make([]byte, blockSize*4) 40 _, err := r.Read(buf) 41 if err != nil { 42 t.Error(err) 43 } 44 45 for i := 0; i < len(buf); i += blockSize { 46 fmt.Printf("block[%d]\n\theader: %s\n\tdata: %q\n\n", i/blockSize, 47 buf[i:i+headerSize], buf[i+headerSize:i+blockSize]) 48 } 49 } 50 51 func TestReader_ReadRecord(t *testing.T) { 52 setup(t) 53 r := NewReader(b) 54 55 rec, err := r.readRecord() 56 if err != nil { 57 t.Error(err) 58 } 59 fmt.Printf("record: %q\n", rec) 60 }