Skip to content

Commit febeaa3

Browse files
author
lixizan
committed
add unit tests
1 parent 8d06470 commit febeaa3

File tree

5 files changed

+109
-3
lines changed

5 files changed

+109
-3
lines changed

Makefile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,4 @@ run-testsuite-server:
1111
go run github.com/lxzan/gws/examples/testsuite
1212

1313
coverage:
14-
go test -mod=readonly -covermode=count -coverprofile=./bin/coverprofile.cov -run="^Test" -coverpkg=$(go list -mod=vendor ./... | grep -v "/test" | tr '\n' ',') ./...
15-
14+
go test ./... -covermode=count -coverprofile=./bin/gws.out

internal/error.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ func (c StatusCode) Uint16() uint16 {
7979

8080
func (c StatusCode) Bytes() []byte {
8181
if c == 0 {
82-
return []byte{}
82+
return []byte{0, 0}
8383
}
8484
return []byte{uint8(c >> 8), uint8(c << 8 >> 8)}
8585
}

internal/internal_test.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
package internal
2+
3+
import (
4+
"bytes"
5+
"encoding/hex"
6+
"github.com/stretchr/testify/assert"
7+
"io"
8+
"testing"
9+
)
10+
11+
func TestError(t *testing.T) {
12+
var as = assert.New(t)
13+
t.Run("", func(t *testing.T) {
14+
var code = StatusCode(1000)
15+
as.Equal(uint16(1000), code.Uint16())
16+
as.Equal(hex.EncodeToString(code.Bytes()), "03e8")
17+
as.Equal(code.Error() != "", true)
18+
})
19+
20+
t.Run("", func(t *testing.T) {
21+
var code = StatusCode(0)
22+
as.Equal(hex.EncodeToString(code.Bytes()), "0000")
23+
})
24+
25+
t.Run("", func(t *testing.T) {
26+
var err error = NewError(CloseGoingAway, io.EOF)
27+
as.Equal(err.Error() != "", true)
28+
})
29+
}
30+
31+
func TestBuffer_ReadFrom(t *testing.T) {
32+
var b = Buffer{Buffer: bytes.NewBuffer(nil)}
33+
b.ReadFrom()
34+
}
35+
36+
func TestRandomString_Uint32(t *testing.T) {
37+
Numeric.Uint32()
38+
}

internal/pool_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,8 @@ func TestBufferPool(t *testing.T) {
3333
var buf = pool.Get(5000)
3434
as.Equal(Lv4, buf.Cap())
3535
}
36+
37+
pool.Put(nil)
38+
pool.Put(NewBufferWithCap(0))
39+
pool.Get(17 * 1024)
3640
}

internal/utils_test.go

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package internal
22

33
import (
44
"bytes"
5+
"encoding/hex"
56
"encoding/json"
67
"fmt"
78
"github.com/stretchr/testify/assert"
@@ -17,6 +18,18 @@ func TestNewMaskKey(t *testing.T) {
1718
assert.Equal(t, 4, len(key))
1819
}
1920

21+
func TestMaskByByte(t *testing.T) {
22+
var data = []byte("hello")
23+
MaskByByte(data, []byte{0xa, 0xb, 0xc, 0xd})
24+
assert.Equal(t, "626e606165", hex.EncodeToString(data))
25+
}
26+
27+
func TestStringToBytes(t *testing.T) {
28+
var s1 = string(AlphabetNumeric.Generate(32))
29+
var s2 = string(StringToBytes(s1))
30+
assert.Equal(t, s1, s2)
31+
}
32+
2033
func TestComputeAcceptKey(t *testing.T) {
2134
var s = ComputeAcceptKey("PUurdSuLQj/6n4NFf/rA7A==")
2235
assert.Equal(t, "HmIbwxkcLxq+A+3qnlBVtT7Bjgg=", s)
@@ -92,3 +105,55 @@ func TestFNV64(t *testing.T) {
92105
_, _ = h.Write(s)
93106
assert.Equal(t, h.Sum64(), FNV64(string(s)))
94107
}
108+
109+
func TestIOUtil(t *testing.T) {
110+
var as = assert.New(t)
111+
112+
t.Run("", func(t *testing.T) {
113+
var dst = bytes.NewBuffer(nil)
114+
var src = bytes.NewBuffer(make([]byte, 0))
115+
var err = CopyN(dst, src, 0)
116+
as.NoError(err)
117+
})
118+
119+
t.Run("", func(t *testing.T) {
120+
var dst = bytes.NewBuffer(nil)
121+
var src = bytes.NewBuffer(make([]byte, 6))
122+
var err = CopyN(dst, src, 12)
123+
as.Error(err)
124+
})
125+
126+
t.Run("", func(t *testing.T) {
127+
var reader = strings.NewReader("hello")
128+
var p = make([]byte, 0)
129+
var err = ReadN(reader, p, 0)
130+
as.NoError(err)
131+
})
132+
133+
t.Run("", func(t *testing.T) {
134+
var reader = strings.NewReader("hello")
135+
var p = make([]byte, 5)
136+
var err = ReadN(reader, p, 10)
137+
as.Error(err)
138+
})
139+
140+
t.Run("", func(t *testing.T) {
141+
var writer = bytes.NewBufferString("")
142+
var err = WriteN(writer, nil, 0)
143+
as.NoError(err)
144+
})
145+
146+
t.Run("", func(t *testing.T) {
147+
var writer = bytes.NewBufferString("")
148+
var p = []byte("hello")
149+
var err = WriteN(writer, p, 5)
150+
as.NoError(err)
151+
})
152+
153+
t.Run("", func(t *testing.T) {
154+
var buf1 = NewBufferWithCap(0)
155+
as.Equal(0, buf1.Cap())
156+
var buf2 = NewBufferWithCap(12)
157+
as.Equal(12, buf2.Cap())
158+
})
159+
}

0 commit comments

Comments
 (0)