diff options
author | Ondrej Fabry <ofabry@cisco.com> | 2019-01-10 10:57:50 +0100 |
---|---|---|
committer | Ondrej Fabry <ofabry@cisco.com> | 2019-01-10 11:05:35 +0100 |
commit | 08266e35878f198e2fa59fcfc9f0fc3a4b1dfbf5 (patch) | |
tree | 1269acfc3bf6fdd47414eb64da3ecad4865e37d6 /vendor/github.com/lunixbochs/struc/field_test.go | |
parent | 3ef6f210edcf7dd753733d46ec3f2dd5dc795b61 (diff) |
Add support for string types
- strings are now generated as two fields for length and string itself
- aliases are now sorted by name to prevent generating different code
- dependencies are now managed by dep
- binapi files are regenerated using VPP 19.01-rc0~622-g7b01e9e8
- old stats binary api has been deprecated and removed from VPP
Change-Id: Ieb8515c73021339a45f407386f8e3d87dcf4469e
Signed-off-by: Ondrej Fabry <ofabry@cisco.com>
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) - } -} |