-
Notifications
You must be signed in to change notification settings - Fork 13
/
balancer_test.go
117 lines (109 loc) · 2.96 KB
/
balancer_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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
package kafka
import (
"reflect"
"testing"
)
func TestGetBalancerCRC32(t *testing.T) {
balancer := GetBalancerCRC32()
if balancer == nil {
t.Error("Expected non-nil balancer, got nil")
}
if reflect.TypeOf(balancer).String() != "*kafka.CRC32Balancer" {
t.Errorf("Expected *kafka.CRC32Balancer, got %s", reflect.TypeOf(balancer).String())
}
}
func TestGetBalancerHash(t *testing.T) {
balancer := GetBalancerHash()
if balancer == nil {
t.Error("Expected non-nil balancer, got nil")
}
if reflect.TypeOf(balancer).String() != "*kafka.Hash" {
t.Errorf("Expected *kafka.Hash, got %s", reflect.TypeOf(balancer).String())
}
}
func TestGetBalancerLeastBytes(t *testing.T) {
balancer := GetBalancerLeastBytes()
if balancer == nil {
t.Error("Expected non-nil balancer, got nil")
}
if reflect.TypeOf(balancer).String() != "*kafka.LeastBytes" {
t.Errorf("Expected *kafka.LeastBytes, got %s", reflect.TypeOf(balancer).String())
}
}
func TestGetBalancerMurmur2Balancer(t *testing.T) {
balancer := GetBalancerMurmur2Balancer()
if balancer == nil {
t.Error("Expected non-nil balancer, got nil")
}
if reflect.TypeOf(balancer).String() != "*kafka.Murmur2Balancer" {
t.Errorf("Expected *kafka.Murmur2Balancer, got %s", reflect.TypeOf(balancer).String())
}
}
func TestGetBalancerReferenceHash(t *testing.T) {
balancer := GetBalancerReferenceHash()
if balancer == nil {
t.Error("Expected non-nil balancer, got nil")
}
if reflect.TypeOf(balancer).String() != "*kafka.ReferenceHash" {
t.Errorf("Expected *kafka.ReferenceHash, got %s", reflect.TypeOf(balancer).String())
}
}
func TestGetBalancerRoundRobinh(t *testing.T) {
balancer := GetBalancerRoundRobin()
if balancer == nil {
t.Error("Expected non-nil balancer, got nil")
}
if reflect.TypeOf(balancer).String() != "*kafka.RoundRobin" {
t.Errorf("Expected *kafka.RoundRobin, got %s", reflect.TypeOf(balancer).String())
}
}
func TestGetBalancerString(t *testing.T) {
tests := []struct {
name string
balancer Balancer
want string
}{
{
name: "Should_Return_CRC32Balancer",
balancer: GetBalancerCRC32(),
want: "CRC32Balancer",
},
{
name: "Should_Return_Hash",
balancer: GetBalancerHash(),
want: "Hash",
},
{
name: "Should_Return_LeastBytes",
balancer: GetBalancerLeastBytes(),
want: "LeastBytes",
},
{
name: "Should_Return_Murmur2Balancer",
balancer: GetBalancerMurmur2Balancer(),
want: "Murmur2Balancer",
},
{
name: "Should_Return_ReferenceHash",
balancer: GetBalancerReferenceHash(),
want: "ReferenceHash",
},
{
name: "Should_Return_RoundRobin",
balancer: GetBalancerRoundRobin(),
want: "RoundRobin",
},
{
name: "Should_Return_Unknown",
balancer: nil,
want: "Unknown",
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := GetBalancerString(tt.balancer); got != tt.want {
t.Errorf("GetBalancerString() = %v, want %v", got, tt.want)
}
})
}
}