-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain_test.go
59 lines (50 loc) · 1.02 KB
/
main_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package main
import (
"testing"
)
var bh [16]byte
var dh Data
var input = [16]byte{0, 132, 95, 237, 80, 104, 111, 110, 101, 0, 0, 0, 0, 0, 1, 0}
var inputData = Data{
Value: 8675309,
Label: [10]byte{80, 104, 111, 110, 101, 0, 0, 0, 0, 0},
Active: true,
}
func TestIdentical(t *testing.T) {
b1 := BytesFromData(inputData)
b2 := BytesFromDataUnsafe(inputData)
if b1 != b2 {
t.Fatal(b1, b2)
}
if b1 != input {
t.Fatal(b1, input)
}
d1 := DataFromBytes(b1)
d2 := DataFromBytesUnsafe(b1)
if d1 != d2 {
t.Fatal(d1, d2)
}
if d1 != inputData {
t.Fatal(d1, inputData)
}
}
func BenchmarkBytesFromData(b *testing.B) {
for i := 0; i < b.N; i++ {
bh = BytesFromData(inputData)
}
}
func BenchmarkBytesFromDataUnsafe(b *testing.B) {
for i := 0; i < b.N; i++ {
bh = BytesFromDataUnsafe(inputData)
}
}
func BenchmarkDataFromBytes(b *testing.B) {
for i := 0; i < b.N; i++ {
dh = DataFromBytes(input)
}
}
func BenchmarkDataFromBytesUnsafe(b *testing.B) {
for i := 0; i < b.N; i++ {
dh = DataFromBytesUnsafe(input)
}
}