title: redux-saga-test-plan: use expectSaga to simulate an thrown exception
body: <p>Inside my saga, I call an api request.</p>
  
  <pre><code>function* sendRequestSaga(): SagaIterator {
      yield takeEvery(Actions.sendRequest.type, sendApiRequest);
  }
  
  function* sendApiRequest(action: Action&lt;string&gt;) {
      try {
          yield call(/*args for calling api*/);
      } catch (error) {
          // Handle error
      }
  }
  </code></pre>
  
  <p>I have created unit test for the success case. Now I want to create an unit test for the case that call api returns an exception.</p>
  
  <pre><code>it("Should handle exception correctly", () =&gt; {
      const expectedException = new Error("my expecting exception");
      return expectSaga(mySaga)
          .provide([
              [call(/*args for calling api*/), expectedException],
          ])
          .call(/*args for calling api*/)
          .dispatch({
              type: Actions.sendRequest.type,
              payload: /*args*/
          })
          .silentRun()
          .then(() =&gt; {
              // My assertion
          });
  }
  </code></pre>
  
  <p>But this is not working cause <code>provide</code> only return a value for <code>call</code> method instead of throwing a <code>new Error</code> object. So, Error object is not caught. How can I simulate a throw Error action?</p>