| 144 | } |
| 145 | |
| 146 | func TestRecoveredAsError(t *testing.T) { |
| 147 | t.Parallel() |
| 148 | t.Run("as error is nil", func(t *testing.T) { |
| 149 | t.Parallel() |
| 150 | fn := func() error { |
| 151 | var c Catcher |
| 152 | c.Try(func() {}) |
| 153 | return c.Recovered().AsError() |
| 154 | } |
| 155 | err := fn() |
| 156 | assert.Nil(t, err) |
| 157 | }) |
| 158 | |
| 159 | t.Run("as error is not nil nil", func(t *testing.T) { |
| 160 | t.Parallel() |
| 161 | fn := func() error { |
| 162 | var c Catcher |
| 163 | c.Try(func() { panic("oh dear!") }) |
| 164 | return c.Recovered().AsError() |
| 165 | } |
| 166 | err := fn() |
| 167 | assert.NotNil(t, err) |
| 168 | }) |
| 169 | } |