errors_test.go 651 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package fserr
  2. import (
  3. "errors"
  4. "fmt"
  5. "testing"
  6. )
  7. var testErr = newError(ErrUnknownCode, "测试错误")
  8. func TestErrors(t *testing.T) {
  9. err := testErr
  10. fmt.Println("测试错误打印:", err)
  11. if err != testErr {
  12. t.Fatal("错误不同")
  13. }
  14. isRight := errors.Is(err, testErr)
  15. if !isRight {
  16. t.Fatal("Is错误")
  17. }
  18. targetErr := &Error{}
  19. asRight := errors.As(err, &targetErr)
  20. if !asRight {
  21. t.Fatal("As错误")
  22. }
  23. fmt.Println("测试目标错误打印:", targetErr)
  24. if !errors.Is(err, targetErr) {
  25. t.Fatal("目标错误和原始错误不一致")
  26. }
  27. if err != targetErr {
  28. t.Fatal("目标错误和原始错误不一致")
  29. }
  30. }