title: Redux-Saga yield call returning back as undefined
body: <p>Given the following code, I am getting an <code>undefined</code> result back from my <code>yield call</code>. Why is this happening? I am thinking its something with my request function. Not sure why.</p>
  
  <p>In my saga file, this line is coming back undefined:
  <code>const result = yield call(request, Routes.insightTotals);</code></p>
  
  <p>I have verified the request is firing off and returning correctly. Could it be my promise chain that is causing this to be undefined?</p>
  
  <p><strong>HTTP Request functions</strong></p>
  
  <pre><code>function request(url, options) {
    return fetch(url, options)
      .then(parseJSON)
      .then(checkStatus);
  }
  
  function parseJSON(response) {
    if (response.url === 'https://myurl.com') {
      // This returns as a GZIP body so need to convert to text then parse as JSON
      return response.text()
        .then((res) =&gt; {
          const parsed = JSON.parse(res);
          console.log(parsed)
          return parsed;
        }).catch((err) =&gt; {
          throw new Error(err);
        });
    }
    return response.json();
  }
  </code></pre>
  
  <p><strong>Saga file</strong></p>
  
  <pre><code>export function* getInsightTotalsRequestHandler() {
    yield takeEvery(actions.GET_INSIGHT_TOTALS, function* getInsightTotalsRequest() {
      try {
        const result = yield call(request, Routes.insightTotals);
        console.log(result); // THIS IS UNDEFINED
  
        yield put({
          type: actions.GET_INSIGHT_TOTALS_RETURN,
          value: { result },
        });
      } catch (error) {
        yield put({
          type: actions.GET_INSIGHT_TOTALS_RETURN,
          value: { error: error.message ? error.message : '' },
        });
      }
    });
  }
  
  export default function* mySaga() {
    yield all([
      fork(other1RequestHandler),
      fork(other2RequestHandler),
      fork(getInsightTotalsRequestHandler),
    ]);
  }
  </code></pre>