You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
916 B
40 lines
916 B
package grpc
|
|
|
|
import (
|
|
"context"
|
|
"reflect"
|
|
"testing"
|
|
|
|
"github.com/go-kratos/kratos/v2/selector"
|
|
"google.golang.org/grpc/metadata"
|
|
)
|
|
|
|
func TestTrailer(t *testing.T) {
|
|
trailer := Trailer(metadata.New(map[string]string{"a": "b"}))
|
|
if !reflect.DeepEqual("b", trailer.Get("a")) {
|
|
t.Errorf("expect %v, got %v", "b", trailer.Get("a"))
|
|
}
|
|
if !reflect.DeepEqual("", trailer.Get("notfound")) {
|
|
t.Errorf("expect %v, got %v", "", trailer.Get("notfound"))
|
|
}
|
|
}
|
|
|
|
func TestBalancerName(t *testing.T) {
|
|
o := &clientOptions{}
|
|
|
|
WithBalancerName("p2c")(o)
|
|
if !reflect.DeepEqual("p2c", o.balancerName) {
|
|
t.Errorf("expect %v, got %v", "p2c", o.balancerName)
|
|
}
|
|
}
|
|
|
|
func TestFilters(t *testing.T) {
|
|
o := &clientOptions{}
|
|
|
|
WithFilter(func(_ context.Context, nodes []selector.Node) []selector.Node {
|
|
return nodes
|
|
})(o)
|
|
if !reflect.DeepEqual(1, len(o.filters)) {
|
|
t.Errorf("expect %v, got %v", 1, len(o.filters))
|
|
}
|
|
}
|
|
|