github.com/cilium/cilium@v1.16.2/pkg/endpointmanager/errors_test.go (about) 1 // SPDX-License-Identifier: Apache-2.0 2 // Copyright Authors of Cilium 3 4 package endpointmanager 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestErrInvalidPrefix_Error(t *testing.T) { 13 setupEndpointManagerSuite(t) 14 15 type args struct { 16 err ErrInvalidPrefix 17 } 18 type want struct { 19 errMsg string 20 } 21 tests := []struct { 22 name string 23 setupArgs func() args 24 setupWant func() want 25 }{ 26 { 27 name: "random Invalid Prefix", 28 setupArgs: func() args { 29 return args{ 30 err: ErrInvalidPrefix{ 31 InvalidPrefix: "foo", 32 }, 33 } 34 }, 35 setupWant: func() want { 36 return want{ 37 errMsg: "unknown endpoint prefix 'foo'", 38 } 39 }, 40 }, 41 } 42 for _, tt := range tests { 43 args := tt.setupArgs() 44 want := tt.setupWant() 45 errMsg := args.err.Error() 46 require.Equalf(t, want.errMsg, errMsg, "Test Name: %s", tt.name) 47 } 48 } 49 50 func TestIsErrUnsupportedID(t *testing.T) { 51 setupEndpointManagerSuite(t) 52 53 type args struct { 54 err error 55 } 56 type want struct { 57 bool bool 58 } 59 tests := []struct { 60 name string 61 setupArgs func() args 62 setupWant func() want 63 }{ 64 { 65 name: "is not invalid prefix error", 66 setupArgs: func() args { 67 return args{ 68 err: ErrUnsupportedID, 69 } 70 }, 71 setupWant: func() want { 72 return want{ 73 bool: false, 74 } 75 }, 76 }, 77 { 78 name: "is invalid prefix error", 79 setupArgs: func() args { 80 return args{ 81 err: ErrInvalidPrefix{ 82 InvalidPrefix: "foo", 83 }, 84 } 85 }, 86 setupWant: func() want { 87 return want{ 88 bool: true, 89 } 90 }, 91 }, 92 } 93 for _, tt := range tests { 94 args := tt.setupArgs() 95 want := tt.setupWant() 96 errMsg := IsErrInvalidPrefix(args.err) 97 require.Equalf(t, want.bool, errMsg, "Test Name: %s", tt.name) 98 } 99 } 100 101 func TestIsErrInvalidPrefix(t *testing.T) { 102 setupEndpointManagerSuite(t) 103 104 type args struct { 105 err error 106 } 107 type want struct { 108 bool bool 109 } 110 tests := []struct { 111 name string 112 setupArgs func() args 113 setupWant func() want 114 }{ 115 { 116 name: "is not unsupported ID error", 117 setupArgs: func() args { 118 return args{ 119 err: ErrInvalidPrefix{ 120 InvalidPrefix: "foo", 121 }, 122 } 123 }, 124 setupWant: func() want { 125 return want{ 126 bool: false, 127 } 128 }, 129 }, 130 { 131 name: "is unsupported ID error", 132 setupArgs: func() args { 133 return args{ 134 err: ErrUnsupportedID, 135 } 136 }, 137 setupWant: func() want { 138 return want{ 139 bool: true, 140 } 141 }, 142 }, 143 } 144 for _, tt := range tests { 145 args := tt.setupArgs() 146 want := tt.setupWant() 147 errMsg := IsErrUnsupportedID(args.err) 148 require.Equalf(t, want.bool, errMsg, "Test Name: %s", tt.name) 149 } 150 }