unixfs: add more seek test cases
License: MIT Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
Jakub Sztandera committed
Aug 17, 2016 at 19:39 UTC
697868030ea9d9b522e2b68b3e8ace282a7ef2ae
1 file changed
+51
unixfs/mod/dagmodifier_test.go
+51
@@ -578,6 +578,57 @@ func TestRelativeSeek(t *testing.T) {
578
}
579
}
580
581
+func TestInvalidSeek(t *testing.T) {
582
+ dserv := getMockDagServ(t)
583
+
584
+ _, n := getNode(t, dserv, 0)
585
+ ctx, cancel := context.WithCancel(context.Background())
586
+ defer cancel()
587
+
588
+ dagmod, err := NewDagModifier(ctx, n, dserv, sizeSplitterGen(512))
589
+ if err != nil {
590
+ t.Fatal(err)
591
+ }
592
+ _, err = dagmod.Seek(10, -10)
593
+
594
+ if err != ErrUnrecognizedWhence {
595
+ t.Fatal(err)
596
+ }
597
+}
598
+
599
+func TestEndSeek(t *testing.T) {
600
+ dserv := getMockDagServ(t)
601
+
602
+ _, n := getNode(t, dserv, 0)
603
+ ctx, cancel := context.WithCancel(context.Background())
604
+ defer cancel()
605
+
606
+ dagmod, err := NewDagModifier(ctx, n, dserv, sizeSplitterGen(512))
607
+ if err != nil {
608
+ t.Fatal(err)
609
+ }
610
+
611
+ _, err = dagmod.Write(make([]byte, 100))
612
+ if err != nil {
613
+ t.Fatal(err)
614
+ }
615
+
616
+ offset, err := dagmod.Seek(0, os.SEEK_CUR)
617
+ if offset != 100 {
618
+ t.Fatal("expected the relative seek 0 to return current location")
619
+ }
620
+
621
+ offset, err = dagmod.Seek(0, os.SEEK_SET)
622
+ if offset != 0 {
623
+ t.Fatal("expected the absolute seek to set offset at 0")
624
+ }
625
+
626
+ offset, err = dagmod.Seek(0, os.SEEK_END)
627
+ if offset != 100 {
628
+ t.Fatal("expected the end seek to set offset at end")
629
+ }
630
+}
631
+
632
func BenchmarkDagmodWrite(b *testing.B) {
633
b.StopTimer()
634
dserv := getMockDagServ(b)