| package multierror |
| |
| import ( |
| "errors" |
| "fmt" |
| "testing" |
| |
| "gotest.tools/v3/assert" |
| ) |
| |
| 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` |
| 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 |
| * invalid config: |
| * foo |
| * bar` |
| assert.Equal(t, err.Error(), expected) |
| }) |
| } |