errors_test.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package libnetwork
  2. import (
  3. "testing"
  4. "github.com/docker/docker/libnetwork/types"
  5. )
  6. func TestErrorInterfaces(t *testing.T) {
  7. badRequestErrorList := []error{ErrInvalidID(""), ErrInvalidName(""), ErrInvalidJoin{}, ErrInvalidNetworkDriver(""), InvalidContainerIDError(""), ErrNoSuchNetwork(""), ErrNoSuchEndpoint("")}
  8. for _, err := range badRequestErrorList {
  9. switch u := err.(type) {
  10. case types.BadRequestError:
  11. return
  12. default:
  13. t.Fatalf("Failed to detect err %v is of type BadRequestError. Got type: %T", err, u)
  14. }
  15. }
  16. maskableErrorList := []error{ErrNoContainer{}}
  17. for _, err := range maskableErrorList {
  18. switch u := err.(type) {
  19. case types.MaskableError:
  20. return
  21. default:
  22. t.Fatalf("Failed to detect err %v is of type MaskableError. Got type: %T", err, u)
  23. }
  24. }
  25. notFoundErrorList := []error{NetworkTypeError(""), &UnknownNetworkError{}, &UnknownEndpointError{}}
  26. for _, err := range notFoundErrorList {
  27. switch u := err.(type) {
  28. case types.NotFoundError:
  29. return
  30. default:
  31. t.Fatalf("Failed to detect err %v is of type NotFoundError. Got type: %T", err, u)
  32. }
  33. }
  34. forbiddenErrorList := []error{NetworkTypeError(""), &UnknownNetworkError{}, &UnknownEndpointError{}}
  35. for _, err := range forbiddenErrorList {
  36. switch u := err.(type) {
  37. case types.ForbiddenError:
  38. return
  39. default:
  40. t.Fatalf("Failed to detect err %v is of type ForbiddenError. Got type: %T", err, u)
  41. }
  42. }
  43. }