diff --git a/internal/multierror/multierror.go b/internal/multierror/multierror.go index cf4d6a5957..b8ac2bd6a7 100644 --- a/internal/multierror/multierror.go +++ b/internal/multierror/multierror.go @@ -31,9 +31,6 @@ type joinError struct { } func (e *joinError) Error() string { - if len(e.errs) == 1 { - return strings.TrimSpace(e.errs[0].Error()) - } stringErrs := make([]string, 0, len(e.errs)) for _, subErr := range e.errs { stringErrs = append(stringErrs, strings.Replace(subErr.Error(), "\n", "\n\t", -1)) diff --git a/internal/multierror/multierror_test.go b/internal/multierror/multierror_test.go index 2d46240197..efe4d2e327 100644 --- a/internal/multierror/multierror_test.go +++ b/internal/multierror/multierror_test.go @@ -10,10 +10,12 @@ import ( func TestErrorJoin(t *testing.T) { t.Run("single", func(t *testing.T) { - err := Join(fmt.Errorf("invalid config: %w", Join(errors.New("foo")))) - const expected = `invalid config: foo` + err := fmt.Errorf("invalid config:\n%w", Join(errors.New("foo"))) + const expected = `invalid config: +* foo` assert.Equal(t, err.Error(), expected) }) + t.Run("multiple", func(t *testing.T) { err := Join(errors.New("foobar"), fmt.Errorf("invalid config: \n%w", Join(errors.New("foo"), errors.New("bar")))) const expected = `* foobar