OLD | NEW |
| (Empty) |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 package memory | |
6 | |
7 import ( | |
8 "bytes" | |
9 "testing" | |
10 | |
11 . "github.com/smartystreets/goconvey/convey" | |
12 ) | |
13 | |
14 func TestBinutils(t *testing.T) { | |
15 t.Parallel() | |
16 | |
17 Convey("Binary utilities", t, func() { | |
18 b := &bytes.Buffer{} | |
19 | |
20 Convey("bytes", func() { | |
21 t := []byte("this is a test") | |
22 writeBytes(b, t) | |
23 Convey("good", func() { | |
24 r, err := readBytes(b) | |
25 So(err, ShouldBeNil) | |
26 So(r, ShouldResemble, t) | |
27 }) | |
28 Convey("bad (truncated buffer)", func() { | |
29 bs := b.Bytes() | |
30 _, err := readBytes(bytes.NewBuffer(bs[:len(bs)-
4])) | |
31 So(err.Error(), ShouldContainSubstring, "readByt
es: expected ") | |
32 }) | |
33 Convey("bad (bad varint)", func() { | |
34 _, err := readBytes(bytes.NewBuffer([]byte{0x8f}
)) | |
35 So(err.Error(), ShouldContainSubstring, "EOF") | |
36 }) | |
37 }) | |
38 | |
39 Convey("strings", func() { | |
40 t := "this is a test" | |
41 writeString(b, t) | |
42 Convey("good", func() { | |
43 r, err := readString(b) | |
44 So(err, ShouldBeNil) | |
45 So(r, ShouldEqual, t) | |
46 }) | |
47 Convey("bad (truncated buffer)", func() { | |
48 bs := b.Bytes() | |
49 _, err := readString(bytes.NewBuffer(bs[:len(bs)
-4])) | |
50 So(err.Error(), ShouldContainSubstring, "readByt
es: expected ") | |
51 }) | |
52 }) | |
53 }) | |
54 } | |
OLD | NEW |