diff options
Diffstat (limited to 'vendor/github.com/lunixbochs/struc/field_test.go')
-rw-r--r-- | vendor/github.com/lunixbochs/struc/field_test.go | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/vendor/github.com/lunixbochs/struc/field_test.go b/vendor/github.com/lunixbochs/struc/field_test.go deleted file mode 100644 index 45a07b2..0000000 --- a/vendor/github.com/lunixbochs/struc/field_test.go +++ /dev/null @@ -1,77 +0,0 @@ -package struc - -import ( - "bytes" - "testing" -) - -type badFloat struct { - BadFloat int `struc:"float64"` -} - -func TestBadFloatField(t *testing.T) { - buf := bytes.NewReader([]byte("00000000")) - err := Unpack(buf, &badFloat{}) - if err == nil { - t.Fatal("failed to error on bad float unpack") - } -} - -type emptyLengthField struct { - Strlen int `struc:"sizeof=Str"` - Str []byte -} - -func TestEmptyLengthField(t *testing.T) { - var buf bytes.Buffer - s := &emptyLengthField{0, []byte("test")} - o := &emptyLengthField{} - if err := Pack(&buf, s); err != nil { - t.Fatal(err) - } - if err := Unpack(&buf, o); err != nil { - t.Fatal(err) - } - if !bytes.Equal(s.Str, o.Str) { - t.Fatal("empty length field encode failed") - } -} - -type fixedSlicePad struct { - Field []byte `struc:"[4]byte"` -} - -func TestFixedSlicePad(t *testing.T) { - var buf bytes.Buffer - ref := []byte{0, 0, 0, 0} - s := &fixedSlicePad{} - if err := Pack(&buf, s); err != nil { - t.Fatal(err) - } - if !bytes.Equal(buf.Bytes(), ref) { - t.Fatal("implicit fixed slice pack failed") - } - if err := Unpack(&buf, s); err != nil { - t.Fatal(err) - } - if !bytes.Equal(s.Field, ref) { - t.Fatal("implicit fixed slice unpack failed") - } -} - -type sliceCap struct { - Len int `struc:"sizeof=Field"` - Field []byte -} - -func TestSliceCap(t *testing.T) { - var buf bytes.Buffer - tmp := &sliceCap{0, []byte("1234")} - if err := Pack(&buf, tmp); err != nil { - t.Fatal(err) - } - tmp.Field = make([]byte, 0, 4) - if err := Unpack(&buf, tmp); err != nil { - t.Fatal(err) - } -} |