广汽安道拓Acura项目MES后台
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.

51 lines
1.1 KiB

  1. package container
  2. import (
  3. "fmt"
  4. "reflect"
  5. "testing"
  6. )
  7. func TestServiceMethodHandler_New(t *testing.T) {
  8. caller := func(_ []reflect.Value) []reflect.Value {
  9. return nil
  10. }
  11. serviceMethodHandler, err := NewServiceMethodHandler(caller)
  12. if err != nil {
  13. t.Fatalf("意外错误:%s", err.Error())
  14. }
  15. if serviceMethodHandler == nil {
  16. t.Fatalf("创建失败!")
  17. }
  18. if !CallerEqual(serviceMethodHandler.caller, caller) {
  19. t.Fatalf("调用器设置错误!")
  20. }
  21. }
  22. func TestServiceMethodHandler_New_NullCaller(t *testing.T) {
  23. _, err := NewServiceMethodHandler(nil)
  24. if err == nil {
  25. t.Fatalf("意外的没有错误!")
  26. }
  27. if err.Error() != fmt.Sprintf("调用器不能为空!") {
  28. t.Fatalf("意外错误:%s", err.Error())
  29. }
  30. }
  31. func TestServiceMethodHandler_Caller(t *testing.T) {
  32. caller := func([]reflect.Value) []reflect.Value {
  33. return nil
  34. }
  35. methodHandler, err := NewServiceMethodHandler(caller)
  36. if err != nil {
  37. t.Fatalf("意外错误:%s", err.Error())
  38. }
  39. caller1 := func([]reflect.Value) []reflect.Value {
  40. return nil
  41. }
  42. methodHandler.caller = caller1
  43. if !CallerEqual(methodHandler.Caller(), caller1) {
  44. t.Fatalf("获取调用器错误!")
  45. }
  46. }