MCPcopy
hub / github.com/dropbox/godropbox / TestFindWrappedErrorFoundTop

Function TestFindWrappedErrorFoundTop

errors/errors_test.go:201–243  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

199}
200
201func TestFindWrappedErrorFoundTop(t *testing.T) {
202 var err0 error
203 callCount0 := 0
204 foundErr, found := FindWrappedError(err0, makeTestErrorClassifier(&callCount0))
205 require.False(t, found)
206 require.Nil(t, foundErr)
207 require.Equal(t, 0, callCount0)
208
209 err1 := New("return_top")
210 callCount1 := 0
211 foundErr, found = FindWrappedError(err1, makeTestErrorClassifier(&callCount1))
212 require.True(t, found)
213 require.Equal(t, err1, foundErr)
214 require.Equal(t, 1, callCount1)
215
216 err2 := Wrap(err1, "skip")
217 callCount2 := 0
218 foundErr, found = FindWrappedError(err2, makeTestErrorClassifier(&callCount2))
219 require.True(t, found)
220 require.Equal(t, err2, foundErr)
221 require.Equal(t, 2, callCount2)
222
223 err3 := Wrap(err2, "skip")
224 callCount3 := 0
225 foundErr, found = FindWrappedError(err3, makeTestErrorClassifier(&callCount3))
226 require.True(t, found)
227 require.Equal(t, err3, foundErr)
228 require.Equal(t, 3, callCount3)
229
230 err4 := Wrap(err3, "return_top")
231 callCount4 := 0
232 foundErr, found = FindWrappedError(err4, makeTestErrorClassifier(&callCount4))
233 require.True(t, found)
234 require.Equal(t, err4, foundErr)
235 require.Equal(t, 1, callCount4)
236
237 err5 := Wrap(err4, "skip")
238 callCount5 := 0
239 foundErr, found = FindWrappedError(err5, makeTestErrorClassifier(&callCount5))
240 require.True(t, found)
241 require.Equal(t, err5, foundErr)
242 require.Equal(t, 2, callCount5)
243}
244
245// ---------------------------------------
246// minimal example + test for custom error

Callers

nothing calls this directly

Calls 4

FindWrappedErrorFunction · 0.85
makeTestErrorClassifierFunction · 0.85
WrapFunction · 0.85
NewFunction · 0.70

Tested by

no test coverage detected