package container
|
|
|
|
import (
|
|
"fmt"
|
|
"reflect"
|
|
"testing"
|
|
)
|
|
|
|
func TestServiceMethodHandler_New(t *testing.T) {
|
|
|
|
caller := func(_ []reflect.Value) []reflect.Value {
|
|
return nil
|
|
}
|
|
serviceMethodHandler, err := NewServiceMethodHandler(caller)
|
|
if err != nil {
|
|
t.Fatalf("意外错误:%s", err.Error())
|
|
}
|
|
if serviceMethodHandler == nil {
|
|
t.Fatalf("创建失败!")
|
|
}
|
|
if !CallerEqual(serviceMethodHandler.caller, caller) {
|
|
t.Fatalf("调用器设置错误!")
|
|
}
|
|
}
|
|
|
|
func TestServiceMethodHandler_New_NullCaller(t *testing.T) {
|
|
_, err := NewServiceMethodHandler(nil)
|
|
if err == nil {
|
|
t.Fatalf("意外的没有错误!")
|
|
}
|
|
if err.Error() != fmt.Sprintf("调用器不能为空!") {
|
|
t.Fatalf("意外错误:%s", err.Error())
|
|
}
|
|
}
|
|
|
|
func TestServiceMethodHandler_Caller(t *testing.T) {
|
|
caller := func([]reflect.Value) []reflect.Value {
|
|
return nil
|
|
}
|
|
methodHandler, err := NewServiceMethodHandler(caller)
|
|
if err != nil {
|
|
t.Fatalf("意外错误:%s", err.Error())
|
|
}
|
|
caller1 := func([]reflect.Value) []reflect.Value {
|
|
return nil
|
|
}
|
|
methodHandler.caller = caller1
|
|
if !CallerEqual(methodHandler.Caller(), caller1) {
|
|
t.Fatalf("获取调用器错误!")
|
|
}
|
|
}
|