MCPcopy Create free account
hub / github.com/cortexproject/cortex / TestMultiError_Add

Function TestMultiError_Add

pkg/util/multierror/multierror_test.go:11–48  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

9)
10
11func TestMultiError_Add(t *testing.T) {
12 tests := []struct {
13 name string
14 errs []error
15 expected int
16 }{
17 {
18 name: "nil error is not added",
19 errs: []error{nil},
20 expected: 0,
21 },
22 {
23 name: "non-nil error is added",
24 errs: []error{errors.New("err1")},
25 expected: 1,
26 },
27 {
28 name: "multiple errors are added",
29 errs: []error{errors.New("err1"), errors.New("err2"), errors.New("err3")},
30 expected: 3,
31 },
32 {
33 name: "nil errors are skipped among non-nil",
34 errs: []error{errors.New("err1"), nil, errors.New("err2")},
35 expected: 2,
36 },
37 }
38
39 for _, tt := range tests {
40 t.Run(tt.name, func(t *testing.T) {
41 var me MultiError
42 for _, err := range tt.errs {
43 me.Add(err)
44 }
45 assert.Len(t, me, tt.expected)
46 })
47 }
48}
49
50func TestMultiError_Add_flattensNestedMultiError(t *testing.T) {
51 inner := MultiError{}

Callers

nothing calls this directly

Calls 3

AddMethod · 0.95
RunMethod · 0.65
LenMethod · 0.45

Tested by

no test coverage detected